4

git リポジトリの commit と push に 1 GB のムービーを追加するとします。次に、プッシュしたコミットを元に戻し、それをプッシュします。現在、最新のヘッドには 1 GB のファイルが含まれていません。

コミットを元に戻したばかりですが、1 GB のファイルが git 履歴の一部として永久に残るのは正しいですか? 1 GBのファイルなしで最新のヘッドに取り組んでいるにもかかわらず、レポはまだ1 GB大きく、それは永遠に残るということですか?

4

1 に答える 1

3

コミットを元に戻したばかりですが、1 GB のファイルが git 履歴の一部として永久に残るのは正しいですか?

はい、レポは大きなままです。バージョン管理システムは履歴を保持するように作られています。

git filter-branchサイズを縮小するには、履歴をフィルタリングして(またはBFGを使用して)クリーニングする必要があります(履歴が変更されます)。

さらに、「BFG Repo Cleaner の実行後に github リポジトリのサイズを更新/縮小する方法」で述べたように、フィルターの後に次のものが必要になります。

git reflog expire --expire=now --all
git gc --prune=now --aggressive
于 2014-12-10T08:49:25.973 に答える