baronyan's blog

linux,macでruby、railsでの開発をしていく中で知ったこと、備忘的なことなどを書いていきます。

gitでファイルの存在をなかったことにする

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

してから、

git push --force origin master

で強制pushをすることで、最初からそのファイルのコミットがなかったことにできます。

(--cachedを付けるとワーキングファイルを残せます。)
(ディレクトリの場合はrmに-rfオプションを付けてください。)


参考ページ
Git の履歴からファイルを完全に削除する – git filter-branch | EasyRamble