Gitの歴史上から特定のファイルを削除する

Gitに間違えて.env等のファイルをpushしてしまった時にそれを歴史上から削除する方法。

.envを間違えてgitにコミットしてしまったとき

 git filter-branch --force --index-filter "git rm --cached --ignore-unmatch .env" --prune-empty --tag-name-filter cat -- --all

.gitignoreに.envを記入してから下記を実行。

 git push origin --force --all

履歴からのみ削除する(ワーキングツリーには残る)

git filter-branch -f --index-filter 'git rm --cached -rf --ignore-unmatch <ファイル名>' HEAD

履歴からもワーキングツリーからも削除する

git filter-branch -f --index-filter 'git rm -rf --ignore-unmatch <ファイル名>' HEAD

コメントを残す

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。