1. ホーム
  2. git

[解決済み] Git リポジトリからのファイルのパージに失敗、新しいバックアップを作成できない

2022-06-02 17:39:09

質問

リモートリポジトリからファイルを削除しようとしました。

git filter-branch --index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD

しかし、Git は次のような文句を言います。

新しいバックアップを作成できません。以前のバックアップがすでにrefs/original/に存在しています。

バックアップを-fで強制的に上書きする

rm: cannot remove /.git-rewrite/backup-refs : パーミッションが拒否されました。

rm: cannot remove directory /.git-rewrite : ディレクトリが空ではありません

Windowsで.git-rewriteディレクトリを既に削除した後の話です。

どうすればそのファイルを削除できますか?それは私のレポにある 29Mb のファイルなので、ファイルを削除する必要があります。

でのコミットを削除しようとしました。 git rebase -i にあるコミットを削除しようとしましたが、どうやらそのコミットが多くの異なるファイルに触れているため、Git が衝突を訴えてきたので安全のために中止しました。

どうすれば解決するのでしょうか?

すでにフィルターブランチを実行しました。フィルターブランチの後、Git は何か問題が発生したときのために古いコミットへの参照を残しておきます。

これらの情報は .git/refs/original/… . そのディレクトリとその中のすべてのファイルを削除するか、または -f フラグを使用してGitに古い参照を削除させます。

git filter-branch -f \
--index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD