我正在尝试从我的服务器执行git pull origin master
但仍然收到错误:
Please move or remove them before you can merge.
没有未跟踪的文件,但由于某种原因,它似乎与被忽略的文件有问题。
我尝试运行git clean -nd
来查看要删除的内容,并列出了.gitignore
中忽略的一大堆文件。
我该如何解决这个问题呢?我可以做一下吗?
答案 0 :(得分:65)
我刚刚遇到了同样的问题并使用以下方法解决了这个问题。首先使用以下方法清除跟踪文件:
git clean -d -f
然后尝试git pull origin master
您可以通过键入git clean -help
答案 1 :(得分:15)
显然,无论原始文件中.gitignore
文件的内容是什么,文件都已添加到远程存储库中。
由于文件存在于远程存储库中,git也必须将它们拉到本地工作树,因此抱怨文件已经存在。
.gitignore
仅用于扫描新添加的文件,它与已添加的文件没有任何关系。
因此,解决方案是删除工作树中的文件并提取最新版本。或者,长期解决方案是如果错误地添加了文件,则从存储库中删除文件。
答案 2 :(得分:4)
删除&删除所有更改git clean -d -f
答案 3 :(得分:1)
如果要删除的文件太多,这实际上是我的情况。您也可以尝试以下解决方案:
1)提取
2)与策略合并。例如,这对我有用:
git.exe merge --strategy=ours master
答案 4 :(得分:0)
如果您收到错误
尝试手动删除上述文件(小心)。 Git将从master分支合并此文件。
答案 5 :(得分:0)
如果需要,将文件添加到源代码管理,然后合并开发。它有效:)