大事なファイルをリモートリポジトリにpushしてしまっていた時に使えるgit filter-branch
。
git filter-branch -f --index-filter 'git rm -rf --ignore-unmatch [ファイル名]' HEAD
で消したいファイル名を指定し該当の削除して
git gc --aggressive --prune=now
で過去のcommitした上記ファイルを消して最適化して
git push -f
-f
オプションをつけて強制的にpush
。 (強制的に上書きされるので注意が必要です)