Git 错误:未跟踪的工作树文件
当我Git 错误:未跟踪的工作树文件,git,github,git-svn,Git,Github,Git Svn,当我git pull origin development时,我得到了错误: error: Untracked working tree file '<path-to-file>' would be overwritten by merge 错误:合并将覆盖未跟踪的工作树文件“” 原因是,远程开发分支中的一个文件没有放在我本地项目的git中(我不希望该文件在版本控制中,git rm也是如此)。但是在远程开发上,该文件将退出版本控制 如何解决这个问题?基本上,我希望远程分支也从版本
git pull origin development
时,我得到了错误:
error: Untracked working tree file '<path-to-file>' would be overwritten by merge
错误:合并将覆盖未跟踪的工作树文件“”
原因是,远程开发分支
中的一个文件没有放在我本地项目的git中(我不希望该文件在版本控制中,git rm也是如此)。但是在远程开发
上,该文件将退出版本控制
如何解决这个问题?基本上,我希望远程分支也从版本控制中删除该文件。您可以使用gitignore选项。
有关详情,请参阅以下文件:
要解决眼前的问题,您应该备份本地文件,删除原始文件,从远程分支拉取,然后使用git-rm(然后推送,以确保远程回购也删除该文件)。然后,您可以将备份文件放回本地,并在.gitignore文件中添加一行。发生这种情况的原因是,未跟踪的文件将被拉取请求中的新文件覆盖 我的建议是:
git add .
git stash
git pull
基本上,将未被跟踪的文件添加到您的git repo中,并将其隐藏起来,然后放入新版本。作为@vpatil,我在这篇文章中发现了一些相关内容,@mtkumar82建议您执行以下操作:
git fetch --all
git reset --hard origin/{{your branch name}}
这对我来说非常有效,因为我没有跟踪对代码本身不重要的文件,所以它们没有跟踪,我也不在乎它们是什么版本。我希望这有助于将来以这个线程结束的人,而不是像我遇到的那样,以另一个更大的线程结束的人(事实上,谷歌甚至没有显示这个线程,我在找到解决方案后就发现了它)。git pull时可能会出现重复的问题。我将编辑我的答案。您需要做的是删除本地未跟踪副本。发生的情况是,文件存在于远程,而不是本地。git不允许您覆盖本地未跟踪的文件..gitignore在这里没有帮助。这不是OP的问题:(s)他之前已经添加了一个文件,所以将它添加到.gitignore不会有帮助。