发出 git 拉命令时出错

Error when issuing git pull command

当我发出以下命令时:

git pull origin master

我收到以下错误:

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

在我的 .gitignore 文件中,我最近添加了代码来忽略 *.suo 文件。

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

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

git rm --cached <file>

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

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

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

有了它,您可以从存储库中删除该文件。

首先尝试从存储库中删除文件。

要从存储库中删除文件而不是从本地文件系统中删除它,请使用:

git rm --cached user.v12.suo