git log の取り方をご教示お願いいたします。
つぶさに調べることを少々サボっており恐縮です。ご回答賜れば幸甚。
git に管理されていた過去のファイルがあり、そのファイル名、ファイルパスもわかっていて、その過去のログ(更新履歴)を確認したいと思っています。そのファイルはカレントなワーキングディレクトリには存在しません(最新では削除されているため)。git log を使って、どのようにしたら、そのファイルのログ履歴を確認できるでしょうか?
なお git log --diff-filter=D --summary
とすれば、過去に削除されたファイルのログが引っ張り出せることがわかりました。ただしこれを活用して以下のようにしても、いろいろ問題があってうまくいきません。
git log --diff-filter=D --summary | grep <当該ファイルパス>
としたら、とりあえず検出できるように思うのですが、当 git リポジトリは相当膨大なので、実は以下のようなエラーになります(これについては解消を目指すつもりはありません・・そういうものなのかなという程度でスルーするつもり・・):
console
1warning: inexact rename detection was skipped due to too many files. 2warning: you may want to set your diff.renameLimit variable to at least 700 and retry the command.
-
git log --diff-filter=D --summary | less
とすればとりあえずコンソール表示され、そこから less検索(?)していけば <当該ファイル> の記載箇所がわかります。ただし前述どおりリポジトリが膨大なので、目視確認はまず無理です。git log --diff-filter=D --summary >result.txt
としても本質は変わらず望むものでありません。 -
当該ファイル名(リポジトリ配下でのフルパス)がわかっているので、たとえば
git log --diff-filter=D <当該ファイルパス>
とでもしたいところですが、こんな文法はありません。他に削除されたファイルが実際に多数あるのですが、それらを見る目的はなく、それらは出てきてほしくありません。当該ファイルのみのログをみたいのです。 -
すっきりと目的を達したいという思いと、そもそも git にそのような機能があるのか、あるとすればどのような出力になるのかという興味もあります。
ご回答いただける方がおられましたら、よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/01 03:19