.git元';不要忽略目录

.git元';不要忽略目录,git,xcode4,Git,Xcode4,我试图忽略xcode 4修改的xcuserdata文件夹,尽管它们位于我的.gitignore文件中,但它们仍然会返回 My.gitignore文件作为一行: xcuserdata 然而,只要我在xcode中更改任何UI,我就会得到: # modified: XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata/XXXX.xcuserdatad/UserInterfaceState.xcuserstate 我做了一个 git rm -r

我试图忽略xcode 4修改的xcuserdata文件夹,尽管它们位于我的.gitignore文件中,但它们仍然会返回

My.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次,它不会消失,也不会被忽视。它不断地回来

我做错了什么?很明显,有些事情我不明白。当我第一次创建该文件时,它确实被添加到了存储库中,现在我正试图将其删除


我只想让该文件完全不被跟踪,就像它从未被添加到存储库中一样。

执行此操作后,尝试在.gitignore中使用xUserData/

git rm -r --cached XXXXXXXX.xcodeproj/project.xcworkspace/xcuserdata
检查
git status
是否告诉您该文件夹下的文件已被删除。然后在提交之后,确保git说没有要提交的内容

事实上,您已经做了“10次”,并且它是经过修改的,这表明您做得不对,并且文件夹(实际上是其中的文件)仍然被跟踪


除此之外,
.gitignore
的内容似乎很好,我甚至在我的回复中确认了它的有效性。

如果您不能仅仅因为修改了
UserInterfaceState.xUserState
而推送提交,这里有一个快速修复方法:

  • 打开管理器,转到存储库,复制提交的代码(类似于
    f01a2147218d by username
  • 打开终端,转到项目文件夹,执行git重置--hard f01a2147218d
  • 推动提交
    试过了,没什么区别。我想我知道发生了什么。由于该文件已被修改,因此尚未对其进行“添加”,因此后面跟着“提交”的“rm”不起作用。没有100%的意义,但一旦我在xcode修改文件之前对文件进行了修改,一切都正常了。