如果你正在使用 CocoaPods,那么什么应该加入到你的 .gitignore 文件中?

19 浏览
0 Comments

如果你正在使用 CocoaPods,那么什么应该加入到你的 .gitignore 文件中?

我已经从事iOS开发几个月了,刚学会了一种非常有前景的依赖管理库:CocoaPods

我在一个个人项目上试了试:在我的Podfile中添加了一个依赖Kiwi,运行pod install CocoaPodsTest.xcodeproj,然后哇,它很好用。

我唯一感到疑惑的就是:我要检查什么,忽略什么版本控制?显然,我想检查Podfile本身,可能还有.xcworkspace文件;但我要忽略Pods/目录吗?还有其他我应该添加到.gitignore中的在以后添加其他依赖时也会生成的文件吗?

admin 更改状态以发布 2023年5月25日
0
0 Comments

个人而言,我不会检查Pods目录和内容。我不能说我考虑了很长时间的影响,但我的推理大致是:

Podfile引用每个依赖项的特定标签或提交,因此Pods本身可以从podfile生成,因此它们更像是中间构建产品而不是源,并且因此不需要在我的项目中进行版本控制。

0
0 Comments

我提交我的Pods目录。我不同意Pods目录是一个构建产物。实际上,我会说它绝对不是。它是你的应用程序源代码的一部分:没有它就不能构建!

更容易地把CocoaPods看作是一个开发工具而不是构建工具。它不会构建你的项目,它只是为你克隆和安装依赖项。没有必要安装CocoaPods才能简单地构建你的项目。

通过将CocoaPods作为你的构建依赖,你现在需要确保它在你可能需要构建你的项目的任何地方都可用...团队管理员和你的CI服务器都需要它。作为一条规则,你应该始终能够克隆你的源代码库并无需任何其他努力就能构建。

如果不提交你的Pods目录,还会在你经常切换分支时产生极大的麻烦。现在你需要在每次切换分支时运行pod install,以确保你的依赖关系正确。随着你的依赖关系稳定下来,这可能会减少麻烦,但在项目初期,这是一个巨大的时间浪费。

那么,我应该忽略什么?没有。Podfile、锁定文件和Pods目录都会被提交。相信我,这会为你节省大量麻烦。缺点是什么?一个稍微大一点的repo?并不是世界末日。

0