我有一个使用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
工作正常.