Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 错误:未跟踪的工作树文件_Git_Github_Git Svn - Fatal编程技术网

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不会有帮助。