因此,我一直在尋找正確的方法來做到這一點,而我只是沒有明確的命令行知識。從git歷史記錄中刪除未使用的資產
我有一個git repo,裏面有很多資產。這就像我知道的主要罪。
回購已經變得太大了。我想清理它,這樣我可以以編程方式從整個回購歷史記錄中刪除HEAD中不存在的所有文件。我已經看到了可以指定文件路徑的方法,但實際上,我正在說1000個以上的文件,這些文件已從我們的最終產品中刪除,而我真的不想再購買我的repo文件。
更新: 我清理了本來不應該在那裏的所有資產的回購。我現在真的只有源代碼以及一些應該在那裏的資產。我真的很喜歡保留所有源代碼的所有歷史記錄......所以我真的想要從歷史中刪除已刪除的文件,同時保留當前存在的歷史記錄。這是目標。我很確定它可以使用git filter-branch
來完成 - 但我對此不夠了解。
可能重複https://stackoverflow.com/questions/61212/remove-local-untracked-files-from-my-current-git-branch – DRC 2014-12-01 16:47:28
查看更新。我不這麼認爲。 – normmcgarry 2014-12-01 17:05:21
此時您有一個花園品種過濾分支問題。就像'git filter-branch --index-filter'git rm -rf --cached --ignore-unmatch $ files「HEAD」加上過濾器分支文檔中的其他清理步驟應該適合您。 – 2014-12-01 17:55:03