しばらく前にコミットされたファイルfoo.js
があるとします。このファイルが最初に追加されたコミットを見つけたいだけです。
答えと自分のいじくりを読んだ後、これは私のために働く
git log --follow --diff-filter=A --find-renames=40% foo.js
以下に、パイプラインを必要としない、よりシンプルな「純粋なGit」の方法を示します。
git log --diff-filter=A -- foo.js
ドキュメントを確認してください。削除、変更などについても同じことができます。
https://git-scm.com/docs/git-log#Documentation/git-log.txt---diff-filterACDMRTUXB823082
いつも忘れてしまうので、これには便利なエイリアスがあります。
git config --global alias.whatadded 'log --diff-filter=A'
これにより、次のように簡単になります。
git whatadded -- foo.js
git log --oneline -- foo.js | tail -n 1
以下はあなたの興味を引くものではないかもしれませんが、今後役立つと思い、Gitのエコシステムのデバッグの一部です。
git-blame
を使用して、ファイルの各行、特にファイル注釈を最後に変更したリビジョンと作成者を表示できます。訪問 https://git-scm.com/book/en/v2/Git-Tools-Debugging-with-Git
例えば、
git blame -L 174,190 xx.py