git checkout master命令给出一个文件被覆盖的错误

时间:2013-02-07 17:11:03

标签: ios git

我刚刚尝试做git checkout master,我收到了这个错误:

macoss-MacBook-Pro-10:Marketing owner12$ git checkout master
error: The following untracked working tree files would be overwritten by checkout:
    Marketing.xcodeproj/project.xcworkspace/xcuserdata/owner12.xcuserdatad/UserInterfaceState.xcuserstate
Please move or remove them before you can switch branches.
Aborting

但我不知道如何处理这种情况。我不介意让这个文件被回购中的内容覆盖。我在这里继续前进的正确方法是什么?

谢谢!

3 个答案:

答案 0 :(得分:1)

如果您不关心该文件,请删除该文件;如果您认为将来需要它,请将其存储。或者只是重命名。

答案 1 :(得分:1)

提交要保留的文件,然后执行git clean以删除不想保留的额外文件。 git ready网站上的这个article很好地描述了它。

如果您只想删除工作目录中的一个或两个文件,那么您可以先进行干运行,然后查看哪些文件将被清除:

git clean -n

然后当你确定这样做时:

git clean -f
如果你想清理目录,那么

git clean有一个-d开关。你可以和其他开关一起使用,所以这就是我通常使用的(然后在干运行后将-n更改为-f):

git clean -n -d

然后在你的git清理之后,使用:

git status

确保您没有未跟踪的文件或未提交的更改。最后切换到master:

git checkout master

答案 2 :(得分:1)

您有未被跟踪的文件。任

rm untracked.file1 untracked.file2

git add . && git commit -m "adding new previously untracked files that serve a purpose"

如果您有权限问题:

git add --ignore-errors .