タイトル通りです。丸一日消滅したので同じことが起きないように書き残しておきます。 要約: filter-branch を使うのはやめよう。filter-repo を使おう。 背景 個人の進捗管理用に使用しているリポジトリの容量が肥大化してきており、過去にコミットしてしまった大きなファイル(オセロの自己対戦ログとか学習済みパラメータとか!)や不要なファイル(実行可能ファイル、トランスパイルされた巨大なソースコードなど)を歴史から抹消してリポジトリをスマートにしようということになりました。 調べてみると、git_find_big.sh をダウンロードしてきて大きなファイルを見つけ、git filter-branch コマンドで各コミットに対し git rm 等のコマンドを適用して歴史から消すという方法が多数ヒットします。自分もこれに従いました。 問題 とにかく遅い まず git filter-