10

我在我的项目中使用 git,每当我尝试从 Xcode 中提取时,我都会得到“未提交的更改”,它会阻止我拉/推。我尝试提交并找到一个扩展名为 *.xcuserstate 的文件,每当我在 Xcode 中打开/滚动到任何项目文件时,都会修改此文件。这让我别无选择,只能做一个包含该文件的提交,它用无意义的提交填充 git 提交日志。

这是有办法阻止这种行为吗?

我试图将 *.xcuserstate 和 xcuserdata 放入 git ignore 但这会导致 Xcode 在我每次尝试拉取时崩溃。

这发生在 Xcode 4.2 和 4.3

4

2 回答 2

18

通常,您不想将*.xcuserstateand*.xcuserdata文件放入您的 Git 存储库中。这些文件实际上并不是您项目的一部分,而只是 Xcode 存储其本地信息的地方,这在重新加载您的项目时很有帮助。

您可以使用以下方法解决此问题:

git rm --cached *.xcuserstate *.xcuserdata

然后提交结果。这将从存储库中删除这些文件,而不会将它们从您的工作目录中删除。

于 2012-06-23T21:56:03.080 回答
2

如果这是每个开发人员都不同的设置文件,您可能不需要对其进行版本控制,只需将其从 Git 中删除即可。

如果这不是一个选项,您可以Git Stash Save在提取之前进行更改并Git Stash pop再次应用它们。

于 2012-06-23T21:55:45.607 回答