添加了pod文件并推送.如何撤消?如何在Xcode和github中使用gitignore?

sky*_*ate 18 xcode github gitignore cocoapods

这是一个两部分问题:1)我已经添加了提交并将所有pod文件推送到github.有没有办法可以删除它们而不是再次将它们推送到github?

2)我知道giti​​gnore可以提供帮助,但我不知道如何使用它.任何人都可以指导我完成使用gitignore的过程吗?

所以我认为我能做的是,从github获取项目,添加gitignore,然后再次推送.那是对的吗?

请帮助,github和Xcode的新手.

Max*_*elc 77

这是正确的,您需要将Pods目录添加到.gitignore

1)从github存储库中删除您的文件:

git rm -r Pods/

并且不要忘记承诺和推动

2)创建一个gitignore文件:

  1. 打开终端,并通过你的项目文件夹,其中git的文件夹所在
  2. 类型 touch .gitignore
  3. 类型 echo "Pods/" > .gitignore

更多信息:这里

  • 如果您想从遥控器中删除它们,可以使用`git rm -r --cache Pods /`。 (2认同)
  • **注意:** .gitignore 可能存在,因此 `touch` 命令可能会删除旧的命令而不会发出警告 (2认同)
  • 你的解决方案对我不起作用。它忽略文件夹“Pod”,但不会忽略它的子文件夹 (2认同)

Ris*_*ena 17

这就是Cocoapods官方文档所说的.

无论您是否签入Pods文件夹都取决于您,因为工作流程因项目而异.
它建议您将Pods目录保留在源代码管理下,不要将其添加到.gitignore.但最终这个决定取决于你:

检查Pods目录的好处:

  1. 克隆了repo之后,即使没有在机器上安装CocoaPods,项目也可以立即构建和运行.无需运行pod安装,也无需Internet连接.
  2. Pod工件(代码/库)始终可用,即使Pod的源(例如GitHub)发生故障也是如此.
  3. 克隆回购后,Pod工件保证与原始安装中的工件相同.

忽略Pods目录的好处:

1.源控制仓库将更小,占用更少的空间.只要所有Pod的源(例如GitHub)都可用,CocoaPods通常能够重新创建相同的安装.(从技术上讲,无法保证在Podfile中不使用提交SHA时,运行pod安装将获取并重新创建相同的工件.在Podfile中使用zip文件时尤其如此.)

2.执行源控制操作时不会有任何冲突,例如合并具有不同Pod版本的分支.

无论您是否检查Pods目录,PodfilePodfile.lock应始终保持在版本控制之下.

参考链接:Cocoapods官方文档

  • 我可能会添加忽略Pods目录的好处:某些pod大于100MB,由github授权,这会导致错误将代码推送到存储库 (4认同)