kansiho's blog

ruby, python, javascript. Rails, wordpress, OpenCV, heroku...

git で100MB超えファイルをcommit してしまい push reject された時

f:id:serendipity4u:20170417172047p:plain

たとえばvendor/bundle以下のgemファイルを全部コミットしてしまった!といった場合。


$ git filter-branch --force --index-filter \
  'git rm --cached --ignore-unmatch 大きいファイル.tar.gz' \
  --prune-empty --tag-name-filter cat -- --all
$ git commit --amend -CHEAD
$ git push

参考

100MB超のファイルをコミットしてしまい githubに pushを拒否された時 - ブログ - ワルブリックス株式会社

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