4

当我尝试提交我的代码项目时,它会显示一个必须提交的名为“UserInterfaceState.xcuserstate”的文件。一旦我提交它并尝试将我的项目推送到 git,Xcode 会给我一条弹出消息,说“工作副本“应用程序”有未提交的更改。当我再次尝试提交时,我会再次提交相同的文件“UserInterfaceState.xcuserstate”。有人可以帮我吗?

4

1 回答 1

20

UserInterfaceState.xcuserstate是 Xcode 保存 GUI 状态的地方,例如窗口位置、打开的选项卡、项目检查器中的扩展节点等。

简单地调整 Xcode 窗口的大小将导致该文件发生更改并被您的源代码控制系统标记为已修改。您可以让您的 SCM 系统忽略对项目本身不重要的特定文件。

您希望 Git 忽略该文件,您可以将其添加到 中.gitignore file,但您必须删除跟踪。要停止跟踪当前跟踪的文件,请使用git rm –cached.

git rm --cached ProjectFolder.xcodeproj/project.xcworkspace/xcuserdata/myUserName.xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "Removed file that shouldn't be tracked"

之后.gitignore将生效UserInterfaceState.xcuserstate 现在开始你不会收到一条弹出消息说'The working copy "app" has uncommitted changes.'

于 2013-05-14T04:24:16.670 回答