如何从历史记录中删除二进制文件?
答
看到这些很好的问题和他们的答案,它解释了如何使用git filter-branch来做你想做的事情:Drop old commit: `git rebase` causes merge conflicts和Update a development team with rewritten Git repo history, removing big files。
对于未来新的存储大文件,我推荐使用git-annex
+0
感谢您将这些指向我并提及git-annex。我会试试看 – flumpb 2012-03-07 14:45:25
答
您将需要使用git filter-branch
来重写存储库。您需要跨所有用户进行同步,并有停止/重新开始的一天。
答
即使世界一个叫BFG工具特别是对这项任务作出。
它的优点是sha1在提交消息中被引用也会被更新!
- http://rtyley.github.io/bfg-repo-cleaner - 主页。
- http://episodes.gitminutes.com/2013/04/gitminutes-06-roberto-tyley-on.html - 采访作者。
在scala中编写它很容易设置并作为命令行程序运行。
@svick你是对的。有什么我可以做的吗?我应该删除帖子吗? – flumpb 2012-03-07 14:44:30
这取决于你。如果你认为这个问题对任何人都没用,你可以删除这个问题。或者你可以让其他人关闭它。 – svick 2012-03-07 14:53:41
[完全删除所有Git存储库提交历史记录中的文件]的副本(http://stackoverflow.com/questions/307828/completely-remove-file-from-all-git-repository-commit-history)以及[如何删除/从Git仓库中的提交历史中删除大文件?](http://stackoverflow.com/questions/2100907/how-do-i-purge-a-huge-file-from-commits-in-git-history) 。 – 2014-04-04 00:49:10