ios – 从git中删除.xcuserstate和DS_Store文件

前端之家收集整理的这篇文章主要介绍了ios – 从git中删除.xcuserstate和DS_Store文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Xcode中,我注意到.DS_Store和* .xcuserstate总是改变,不需要被提交.所以,我写了一个包含以下内容的.gitignore文件
.DS_Store
*.xcuserstate

其他条目.然后我用:

git rm --cached *xcuserstate
git rm ---cached .DS_Store

删除已经在版本控制下的这些文件类型.但是,当我去合并Xcode告诉我有需要提交的变化.这些更改包括.DS_Store文件和.xcuserstate文件.

所以,我试过这个:How Can I Remove .DS_Store Files From A Git Repository?

find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch
find . -name *.xcuserstate -print0 | xargs -0 git rm --ignore-unmatch

我得到了同样的结果.如何从源代码管理中删除这些文件

解决方法

将其从分段区域中删除后,您需要提交更改.

正如你已经,运行:

$git rm --cached path/to/.DS_Store
$git rm --cached *.xcuserstate

请注意,您可能在其他目录中有其他目录,因此您可能需要多次调用才能将它们全部收录.此时,您的删除将在索引中进行,但还有更多要做:添加.gitignore,并提交最终结果:

$git add .gitignore
$git commit -m "Remove and ignore .xcuserstate and .DS_Store files."

现在他们将被从存储库中删除,并在将来被忽略.注意:这将删除其他人的文件,即使您在本地使用git rm –cached.不幸的是,你可以做的不多,此外,这些文件仍然在您的历史记录中,因此根据您所做的操作,您可能会在其他分支中看到它们,直到合并,并且所有分支都基于具有新提交的内容.

猜你在找的iOS相关文章