概要
誤って個人情報の入ったファイルをcommitしてしまった際に、履歴を遡ってファイルごと削除するコマンドのメモ。
コマンド
コマンドはGit管理しているディレクトリのトップで実行し、ファイル名はフルパスで指定する。
git filter-branch --index-filter 'git rm --cached --ignore-unmatch aaa/bbb/password.txt' HEAD
これで削除できないケースもあったが、「-f」オプションを付けて実行することでうまくいった。
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch aaa/bbb/password.txt' HEAD
いくつかのファイルを消した場合、念の為「git grep」で確認すると安心。
git grep MyPassword