Git pull - 请在合并之前移动或删除它们

Bre*_*ett 46 git git-pull git-merge git-clean

我试图git pull origin master从我的服务器做一个但不断收到错误:

Please move or remove them before you can merge.

没有未跟踪的文件,但由于某种原因,它似乎与被忽略的文件有问题.

我尝试运行一个git clean -nd以查看将被删除的内容,并列出了一大堆被忽略的文件.gitignore.

我怎么能解决这个问题呢?

Neh*_*eha 94

我只是遇到了同样的问题并使用以下方法解决了它.首先使用以下清除跟踪文件:

git clean -d -f
Run Code Online (Sandbox Code Playgroud)

然后试试 git pull origin master

您可以通过键入来查看其他git clean选项 git clean -help

  • 这是工作。该解决方案应被接受为答案。 (3认同)
  • 不起作用,我仍然得到:错误:以下未跟踪的工作树文件将被合并删除:logs / recommend.log在合并之前,请先移动或删除它们。 (2认同)

Zby*_*000 21

显然,无论.gitignore原始文件的内容是什么,文件都被添加到远程存储库中.

由于文件存在于远程存储库中,因此git也必须将它们提取到本地工作树,因此会抱怨文件已经存在.

.gitignore 仅用于扫描新添加的文件,它与已添加的文件没有任何关系.

因此,解决方案是删除工作树中的文件并提取最新版本.或者长期解决方案是如果错误地添加了文件,则从存储库中删除文件.


DUR*_*iya 11

删除和删除所有更改 git clean -d -f

  • 谢谢。那对我有用。需要注意的一件事:它会删除所有未跟踪的文件,因此,如果您具有.env文件或其他包含机密的本地配置,请首先进行备份 (2认同)

Dav*_*vid 5

如果要删除的文件太多,这实际上是我的情况。您还可以尝试以下解决方案:

1)获取

2)与策略合并。例如,这个对我有用:

git.exe merge --strategy=ours master
Run Code Online (Sandbox Code Playgroud)