因此,我一直在寻找正确的方法来做到这一点,而我只是没有明确的命令行知识。从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