gitignore不会忽略文件

不pipe我把什么放在.gitignore不能让git忽略下面的UserInterfaceState.xcuserstate文件:

 $ git status On branch master Your branch is up-to-date with 'origin/master'. Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: .gitignore modified: CalFoo.xcodeproj/project.xcworkspace/xcuserdata/wcochran.xcuserdatad/UserInterfaceState.xcuserstate 

我正在使用/编辑此post中列出的.gitignore文件。 我尝试了所有匹配的模式,包括确切的path名: CalFoo.xcodeproj/project.xcworkspace/xcuserdata/wcochran.xcuserdatad/UserInterfaceState.xcuserstate无济于事。

这个特殊的问题来自Xcode用于创build初始git .gitignore的工作stream程,之后添加来自这里的.gitignore文件。 在这个问题中可以find一个更一般的回答忽略以前跟踪的文件(我猜我从来没有在我的search中find这个职位,因为它没有标题中的“gitignore”)。

你只能忽略未版本控制的文件,但是这个文件已经被称为git。

如果你想要git来跟踪这个文件,就不需要告诉git忽略它。

如果你不想让git跟踪那个文件,使用git rm ,你的忽略规则将开始工作。

警告: git rm将删除文件。 使用git rm --cached从repo中删除而不是从磁盘中删除。

我有同样的问题。

首先提交任何未完成的代码更改,然后运行以下命令:

 git rm -r --cached . 

这将从索引(暂存区域)中删除所有已更改的文件,然后运行:

 git add . 

承诺:

 git commit -m ".gitignore working now" 

要撤消git rm –cached filename,请使用git add filename。