在Xcode中使用git时,UserInterfaceState.xcuserstate没有被提交

JTN*_*JTN 3 git objective-c xcode4.5

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

ico*_*ter 17

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"
Run Code Online (Sandbox Code Playgroud)

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