我们应该在Flutter项目中将Podfile.lock添加到.gitignore吗?

时间:2019-10-15 15:12:03

标签: git flutter cocoapods gitignore

当然,在普通的Xcode项目中,应该始终将Podfile.lock检入版本控制。但是,Flutter的iOS运行器应用程序不是一个“正常的” Xcode项目(从某种意义上说,它是由Flutter管理的,很少被开发人员接触)。

Flutter使用Cocoapods,我们的团队注意到Podfile.lock包含对开发人员机器上完整路径的引用。但是,这不会造成任何直接的问题,因为显然,每次构建/运行Flutter应用程序时都会重新生成Podfile.lock,并且将完整路径更改为计算机上的任何路径。另外,删除Podfile.lock不会造成任何危害,因为它还是会自动生成的。

问题是它会导致git中令人讨厌的合并冲突,而每次必须解决。由于它是自动生成的,所以我想知道在这种情况下是否真的有必要将其检入版本控制中,或者仅忽略.gitignore中的文件是否安全。

There is more debate about this on Github,但是我似乎找不到确切的答案。

-编辑- 为了澄清:我知道Podfile.lock的用途,我不确定我对Flutter重写的假设是否正确。

1 个答案:

答案 0 :(得分:1)

签入Podfile.lock的原因是为了使应用程序开发人员可以在团队中准确地重新创建和共享Pod配置。如果不签入Podfile.lock,同一团队中的开发人员将根据执行pod install的时间而获得不同版本的Pod。

如果Flutter取代了Podfile.lock功能,则没有理由签入。