git忽略频繁更新的.xcuserstate文件

今天提交代码时,一直提示有未提交的文件,发现UserInterfaceState.xcuserstate这个文件一直在自动更新,即使我的代码没改变,提交时也有它。后来百度到这是Xcode自带的文件,不应该被提交到版本管理中

先看一下错误:


error.png

.xcodeproj属于包文件,它内部的很多东西是不能提交的,包括:project.xcworkspace和xcuserdata,它们是与用户有关的。Git中有一个.gitignore配置文件,在这个文件中可以设置被忽略的文件。

解决方式一:

后来百度到,在终端键入下面2句,可以在提交代码时忽略掉UserInterfaceState.xcuserstate文件

git rm --cached [YourProjectName].xcworkspace/xcuserdata/[YourUsername].xcuserdatad/UserInterfaceState.xcuserstate
git commit -a -m "Removed file that shouldn't be tracked"

详情见此文:Can't ignore UserInterfaceState.xcuserstate

解决方式二:

如果被忽略的文件一直显示在未跟踪列表中,您可以使用git clean -f -d来清除它们。

git rm --cached YourProjectFolderName.xcodeproj/project.xcworkspace/xcuserdata/yourUserName.xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "Removed file that shouldn't be tracked"
git clean -f -d

你可能感兴趣的:(git忽略频繁更新的.xcuserstate文件)