如何在引入 Xcode 源代码控制时避免 Ds_Store 和 pod?
Posted
技术标签:
【中文标题】如何在引入 Xcode 源代码控制时避免 Ds_Store 和 pod?【英文标题】:How to avoid Ds_Store and pods while pulling in Xcode source control? 【发布时间】:2020-07-01 18:55:19 【问题描述】:我的团队成员推送了 pod 和 ds_store。我们使用 .gitignore 文件并添加了所有要忽略的内容。但是当我将它拉到我的 mac 中时,每个 pod 文件和所有文件仍然会发生冲突。
我怎样才能将它们全部删除并使其对未来友好而不再出现任何错误。
这就是我的冲突的样子:
【问题讨论】:
执行git rm -rf Pods
将其从 repo 中删除,然后将不会被跟踪。
但是 ds_ Store 呢
做同样的事情,并确保它在 .gitignore 文件中
没有帮助..显示相同
我应该从远程删除它吗?
【参考方案1】:
先删除,
rm .DS_Store
然后拉,
git pull origin master
【讨论】:
上次登录时间:ttys000 上的 3 月 20 日星期五 21:58:42 imac@iMACs-iMac ~ % cd /Users/imac/Desktop/nahda-national-school imac@iMACs-iMac nahda-national- school % rm .DS_Store rm: .DS_Store: 没有这样的文件或目录 imac@iMACs-iMac nahda-national-school % git pull origin master 错误:无法拉取,因为您有未合并的文件。提示:在工作树中修复它们,然后使用 'git add/rm这是因为文件已被 git 跟踪。
因此,您需要将它们从存储库中删除。
要删除单个文件...
git rm README.md
要删除文件夹...
git rm -rf Pods
完成此操作后,您需要将更改提交到 repo,然后只要您将它们列在 .gitignore
文件中,就不应再跟踪这些文件/文件夹。
git add .
git commit -am 'refactor: remove un needed files'
git push
从 repo 中递归删除所有 DS_Store 文件夹
find . -name '.DS_Store' -type f -delete
【讨论】:
但是当我通过 git.. 每个文件夹中都有 Ds_store 文件 我添加到我的答案中 自动合并 Nahda School/Podfile.lock CONFLICT (content): 合并 Nahda School/Podfile.lock 冲突自动合并 Nahda School/Podfile CONFLICT (content): 合并 Nahda School/Podfile 冲突冲突(修改/删除):Nahda School/Nahda School/.DS_Store 在 HEAD 中删除并在 abd87c1ee2ba72b8c42dc988d43c8d2b8dc635d3 中修改。 Nahda School/Nahda School/.DS_Store 的版本 abd87c1ee2ba72b8c42dc988d43c8d2b8dc635d3 留在树中。冲突(修改/删除):Nahda School/.DS_Store 在 HEAD 中删除并在 abd87c1e 中修改 有点像这样find . -name '.DS_Store' -type f -delete && rm -rf Pods
以上是关于如何在引入 Xcode 源代码控制时避免 Ds_Store 和 pod?的主要内容,如果未能解决你的问题,请参考以下文章
Xcode如何在预览(Preview)调试中避免与SwiftUI正常运行时环境不一致导致的崩溃
如何避免 XCode 在每次运行时重置 iPhone 上的位置
iOS使用Xcode开发如何避免与解决冲突-不区分svn和git-100%保证你远离冲突