私はgitのプロジェクトで作業していますが、以前は(コードが書けるずっと前に)exec.js
というファイルが存在していました。 このファイルの内容を表示したいとします。 私はこのファイルを含むリポジトリを知っていますが、正確なパスはわかりません。リポジトリから削除したファイルを検索して表示します
答えて
あなたはgit log
にワイルドカード文字を使用できます。exec.js
と呼ばれる任意のファイルが変更されたとき
git log -- *exec.js
はあなたにすべてのログメッセージを与えるだろう。
あなたは(A
言う)の削除がコミット見つけたら、
git checkout A -- *exec.js
これは、あなたexec.js
の最後のバージョンをもたらすことができます。
あなたがexec.js
の完全な履歴を表示したい場合は、gitk
を使用することができます。
gitk -- *exec.js
これは再びあなたにすべての変更が表示されます。 1つのコミットに特に興味がある場合は、gitk
ダイアログのファイルを右クリックし、外部差分ツールを選択します。これにより、パッチ以外にもフルファイルの外部差分ツールが開きます。
あなたが使用してログ履歴内の特定のファイルを検索することができます -
git log -- filepath
git log -n 1 -- filepath
を - あなたはファイルパス、あなたが使用することができている場合は、ファイルパス、その後
git log --diff-filter=D --summary | grep filename
を持っていない場合は
を
を入手して、リビジョンを入手したら、その特定のリビジョンをチェックアウトしてそのファイルを入手することができます
あなたが質問を読んでいない、あなたがやりましたか?彼らは彼らが**その道を知らないと言った**。これはパスフィルターです。それにはパスが必要です。それは役に立たない。 –
パスがわからず、ファイルが削除されたときにコードがありませんでした。 – user429400
@JanHudecはい私です。しかしもちろん、彼はgitリポジトリのパスを持っている必要があります。user429400そうですか? –
削除されたファイルのフルネームとその内容を1つまたは2つのコマンドで簡単にリストする方法はありません。しかし、ここであなたが始めるためにエイリアスです:
$ git config --global alias.find-deleted-file '!f() { for c in `git rev-list HEAD`; do for fnm in `git diff-tree -r --diff-filter=D --name-only $c | grep -P ".*/$1"` ; do echo "$c $fnm" ; git show $c^:$fnm ; echo "" ; done ; done ; } ; f'
これは、提供されたファイル名のパターン(grep -P
が提供するパターンマッチング)で削除されたファイルを検索しますGitのfind-deleted-file
エイリアス(diff-tree
を使用して)利用できるようになりますファイルが削除されたコミット、ファイルのフルネーム、および削除前の内容を表示します。
$ git log --all --graph --decorate --oneline --name-only
* 3f3cba1 (HEAD, master) I
I
* 4c8b369 H
E/H
* a008343 rm F
E/F
* 525a127 FG
E/F
E/G
* 3a10f93 initial
A
B
C
D
E/F
あなたが使用して削除されたF
ファイルを検索します:次の例リポジトリの履歴を使用して
$ git find-deleted-file F
a008343eec91fe917078209d44ae93ee72fc5acb E/F
F
- 1. csprojファイルの重複エントリを検索して削除します
- 2. ファイルを検索してhrefに表示してダウンロードします
- 3. リポジトリから削除したファイルを復元する
- 4. カスタムファイル入力からファイル名を表示して削除する
- 5. gitリポジトリ全体からファイルを完全に削除します
- 6. リポジトリからファイルを永久に削除します。git
- 7. JS検索がdivの返された後divを削除してからdivを削除します
- 8. バイナリ検索ツリーから削除したノードを返す
- 9. 文書をワトソン・ランクから削除して検索する
- 10. コレクションからアイテムを検索して削除する
- 11. Java - Arraylistからオブジェクトを検索して削除する
- 12. Bashはディレクトリ内のファイルを検索して削除しますが、ディレクトリは削除しません。
- 13. バイナリ検索ツリー(python)から削除しますか?
- 14. ドロップダウンからリンクをクリックし、ライブ検索でテキストボックスに表示して削除したときの値を削除する方法
- 15. svnは削除したファイルを "無視"するか、リポジトリから削除できますか?
- 16. 「検索」オプションを削除しても「検索列」オプションを残す
- 17. 実行時にパスを検索してファイルを削除する
- 18. Windows CMD名前でファイルを検索して削除する
- 19. 正規表現でMysqlを検索して削除する
- 20. リファレンスを検索してノードを削除します
- 21. pythonスクリプトを使用したファイルの検索と削除
- 22. Eclipse IDEファイル検索からファイルを削除する方法
- 23. Bash:異なるフォルダから重複したファイルを検索して削除する
- 24. "div"のデータベースから検索したデータを表示したい検索ページを作りたいですか?
- 25. Surecetreeを使用してgitリポジトリからすべてのファイルを削除
- 26. Applescriptを使用してxmlファイルの "\ n"を検索して削除する
- 27. コレクションから要素を同時に検索して削除するか、または待機します。
- 28. いくつかのファイル/ディレクトリをリポジトリから削除しますか? TortoiseSVN
- 29. リモートGitリポジトリで削除されたファイルをステージング/削除するにはどうしたらいいですか?
- 30. ファイルの内容を削除してから(Pythonで)削除しますか?
また、** git diff * revision-before-delete * - *ファイルパス***を使ってファイルの完全な内容を見ることもできます。 (各行はファイルから削除されているので、各行の前に " - "が付きます)。 –