我正在尝试忽略xcode 4修改的xcuserdata文件夹,尽管它们位于我的.gitignore文件中,它们仍然会回来。
我的.gitignore文件为一行:
xcuserdata
然而,只要我在xcode中更改任何UI,我就会得到:
# modified: XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata/XXXX.xcuserdatad/UserInterfaceState.xcuserstate
我做了......
git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata/XXXX.xcuserdatad/UserInterfaceState.xcuserstate
......并试了......
git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata
...然后提交。我已经做了近10次,它不会消失而被忽略。它不断回来。
我做错了什么?显然我不理解。当我第一次创建文件时,文件确实被添加到了存储库中,现在我正试图摆脱它。
我只是希望该文件完全不受限制,就像从未添加到存储库中一样。
答案 0 :(得分:19)
完成后
git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata
检查git status
是否告诉您该文件夹下的文件已被删除。然后在提交之后,确保git说没有什么可以提交。
你已经完成了“10次”并且经过修改后显示你没有正确行事,并且仍在跟踪文件夹(实际上是其中的文件)。
除此之外,.gitignore
的内容似乎还不错,我甚至在我的回购中证实它有效。
答案 1 :(得分:2)
如果你因为UserInterfaceState.xcuserstate
被修改而无法推送你的提交,这里有一个快速修复:
f01a2147218d by username
)git reset --hard f01a2147218d
答案 2 :(得分:-3)
尝试在.gitignore中使用xcuserdata /