我有一个使用git-lfs来存储一些大文件的存储库的工作副本。我已经安装了git-lfs二进制文件,但可能没有在工作副本中运行“git lfs install”。当我想在添加lfs文件后更新本地工作副本时,执行以下命令:

git pull
git lfs pull

只要添加了lfs文件,它就可以正常工作。然后,存储库中有一些经过修改的lfs文件,当我运行git pull时,我收到了错误消息:
Your local changes to the following files would be overwritten by merge
....
....

并且列出了将要通过pull修改的所有lfs文件。

从那时起,我在工作副本中运行了git lfs install,并且运行良好,但是git status仍然列出了所有被修改的文件,并且git pull给了我同样的错误。

我的问题是,如果使用lfs,更新工作副本的正确步骤是什么?我该如何清除这种棘手的情况?

最佳答案

事实证明,在工作副本中运行git lfs install是解决方案的一半。第二部分是在工作副本中运行git reset:

  • 将大文件保留在适当的位置
  • 让git知道它们实际上并不脏,只是

  • 现在看来,我不再需要显式执行git lfs pull来获取最新的大文件。第一个git pull可以正常工作。

    关于Git lfs(大文件存储)说,在git lfs pull之后修改了lfs托管文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34685689/

    10-13 09:02