かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

Git 削除されたファイルを探したい

Railsのプロジェクトでrakeタスクが作成されてproductionに反映したからタスク削除済み。local環境に反映してなくて削除されたファイル探したいという事が頻繁にありGitで削除されたコミットを見つけてくる必要があったのでやりかたのメモ

削除されたファイルを調べるには --diff-filter=D オプションを使う

$ git log --diff-filter=D --name-status

--name-status オプションを使うと削除されたファイル名が合わせてlogに表示される。(--diff-filter=D だけだと削除が実行されたコミットの情報が表示されるだけで、どのファイルが削除されたかは表示されない)

ファイル変更のログを調べたい

ファイル名で log を表示したい時は -- <file name> で該当ファイルへの変更があった log だけを表示することができる。
例えばあるファイルの直近2つの変更 log を調べたい場合は次のような感じ

$ git log -n 2 -- <file name>

-- <file name> オプションは最後に渡さないと直近 2 コミット (-n 2) オプションが無視されるので注意。

あるファイルの追加 (Add) と削除 (Delete) のコミットを調べたい時は --diff-filter と組み合わせて

$ git log --diff-filter=AD --name-status -- <file name>

とすればOK。  
git log 奥が深ぃ〜


[参考]

シルバニアファミリー 森のわくわくログハウス コ-62

シルバニアファミリー 森のわくわくログハウス コ-62

ネタでamazonでログハウス調べたら本当のログハウス キットも売っててビビった。(マジアマゾン何でも売ってるな… コレ 👉https://amzn.to/2YvTc3l )