发出git pull命令时出错

时间:2015-01-16 12:55:09

标签: git

当我发出以下命令时:

git pull origin master

我收到以下错误:

Your local changes to the following files would be overwritten by merge: user.v12.suo

在我的.gitignore文件中,我刚刚添加了代码以忽略* .suo文件。

有人可以解释为什么会这样吗?

3 个答案:

答案 0 :(得分:3)

当您向.gitignore添加模式时,这只是告诉git忽略与模式匹配的新文件,但git已经跟踪的任何文件都不会受到影响。您可以使用此命令告诉git停止跟踪文件:

git rm --cached <file>

这会在下次提交时将其从索引中删除。

答案 1 :(得分:0)

问题是,当您已经添加该文件时,您必须先删除该文件。否则该文件将被标记为已修改。为此你可以使用:

git rm --cached file [file ...]

您可以从存储库中删除该文件。

答案 2 :(得分:0)

尝试首先从repo中删除文件。

要从repo中删除文件而不从本地文件系统中删除它,请使用:

git rm --cached user.v12.suo