我使用Git进行Xcode 4项目版本控制。我明确地添加了ProjectFolder.xcodeproj/project.xcworkspace/xcuserdata/myUserName.xcuserdatad/UserInterfaceState。xcuserstate到.gitignore,但是Git不会忽略它。有人知道为什么吗?
当前回答
对于xcode 8.3.3,我刚刚检查了上面的代码,并观察到,现在在这种情况下,我们必须将命令更改为这样
首先,您可以使用。gitignore文件
touch .gitignore
之后,你可以使用这个命令删除所有的userInterface文件,通过使用这个命令,它将尊重你的.gitignore文件。
git rm --cached [project].xcworkspace/xcuserdata/[username].xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "Removed file that shouldn't be tracked"
其他回答
Git可能已经在跟踪该文件。
gitignore文件中写道:
要停止跟踪当前正在跟踪的文件,请使用git rm——cached。
使用这个,用你的信息替换[project]和[username]:
git rm --cached [project].xcodeproj/project.xcworkspace/xcuserdata/[username].xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "Removed file that shouldn't be tracked"
或者你也可以使用-a选项来提交git,这将添加所有被修改或删除的文件。
一旦你从git中删除了这个文件,它就会尊重你的.gitignore。
你也可以忽略Xcode首选项本身的文件。
从https://www.toptal.com/developers/gitignore生成gitignore文件
去Xcode ->首选项->源控制-> Git ->添加列表中所有忽略项…尽管UI并不是真的有用&你必须单独添加所有项目,但在这里添加忽略文件肯定有效。
这对我很有用
打开包含项目文件project的文件夹。Xcworkspace。 这样写:git rm——cached *xcuserstate
这将删除文件。
这里有一个关于如何递归地从git历史中删除有问题的文件的很好的解释:http://help.github.com/remove-sensitive-data/
非常有用,否则工具在试图显示那些不应该首先检查的巨大文件上的差异时往往会“挂起”……
以下是你可以做的(简而言之)来摆脱最大的东西:
cd YourProject
git filter-branch --index-filter 'git rm --cached --ignore-unmatch -r YourProject.xcodeproj/project.xcworkspace' HEAD
# see what you want to do with your remote here...
# you can: git push origin master --force
# or you can delete it and push a fresh new one from your cleaned-up local...
rm -rf .git/refs/original
git gc --prune=now
git gc --aggressive --prune=now
对我来说非常有用:)
如果您正在使用源树应用程序,这里有一个更简单的解决方案。 以下是使用说明
1.右键单击要添加到git忽略列表中的文件并选择停止跟踪。
再次右键单击相同的文件,你会注意到忽略选项现在启用,然后单击忽略按钮。
现在,您可以为同一个文件重置或提交更改,这取决于您的更改是否重要。将来所选文件的更改将不会被跟踪。
推荐文章
- iOS如何设置应用程序图标和启动图像
- 在单个文件中重新启动/撤消冲突解决方案
- Visual Studio代码如何解决合并冲突与git?
- 无法推送到远程分支,无法解析到分支
- 模拟器慢动作动画现在打开了吗?
- Git:如何将数据库重置为特定的提交?
- 如何在合并期间使用Git和命令行保存本地文件或远程文件?
- 能够用一个命令推到所有git遥控器?
- 重新基于Git合并提交
- 忽略已经签入目录的内容?
- 如何从windows cmd保存git提交消息?
- (Mac) -bash: __git_ps1:命令未找到
- 如何删除多个已删除的文件在Git仓库
- 使用vimdiff查看所有' git diff '
- 如何拉特定的目录与git