【发布时间】:2013-04-25 17:33:59
【问题描述】:
我在 git 存储库中有一个大型二进制文件,在几次提交中已更改。这些提交还包括对其他文件的更改。我希望存储库中只有最新版本的二进制文件,但希望保留在这些提交中更改的其他文件的历史记录。
所有有问题的提交都已经被推送到 github,并被团队的其他成员从他们那里拉出来。
我该怎么做?
编辑:我不认为这是另一个引用问题的重复。正如下面的 cmets 中所述,我已经查看了该问题,但想要删除文件的每个版本除了最新版本。其他问题的答案中未涉及此标准。
【问题讨论】:
-
@Andrew Neitsch,我看了那个问题,但我不想清除文件的整个历史记录——我只想保留最新版本。该方法是否会删除文件的整个历史记录,然后将文件的当前版本添加回存储库?
-
是的,可以。但是如果这个大文件之前已经改变了,它很可能会再次改变。鉴于从 git 中清除文件的复杂性,您可能希望将其完全保留在此源存储库之外。另见Github help: What is my disk quota?
-
我不同意这个问题重复了stackoverflow.com/q/2100907/438886 - @greg 特别指出他已经看过这个问题,并区分他想要删除文件的每个版本除了最近的一个 - 参考问题的答案中未提及的标准。