ファイルを誤ってcommit
大きいファイルやバイナリをcommitしてしまった場合
削除してcommitしても、履歴にはのこる
100Mを超えたようなファイルは、GitHubだとエラーになってしまう
どうしても、履歴から「なかった物」としたいケースもある
履歴から削除する方法
履歴から削除する場合は、下記の手段がある
#git filter-branch --tree-filter "rm -f [削除したいファイル]" HEAD
これで削除できる
削除時のエラー
削除するときに下記のエラーがでる場合は、.git フォルダのある
トップのディレクトリでないため、トップディレクトリに移動してから
パス付で呼び出すとよい
You need to run this command from the toplevel of the working tree.
フォルダを削除する場合
フォルダを削除するには
#git filter-branch --tree-filter "rm -f -r [削除したいディレクトリ]" HEAD
となる
2回目以降にエラーとなる場合
2回目を実施しようとすると、下記のエラーが発生する場合がある
この場合は、filter-branch に -f オプションをつけると解決する
Cannot create a new backup.
A previous backup already exists in refs/original/
Force overwriting the backup with -f