Podfile.lock 冲突问题

由于公司为多人开发,因此使用了Source tree来作为代码提交管理控制器,提交时选择忽略pod文件,具体忽略方式可参考点击打开链接,注意该博客里设置的针对source tree 全局忽略文件,建议还是针对单个项目添加忽略文件,针对单个项目添加忽略文件具体方法如下:

终端 cd 到该项目文件夹下,

然后出入 ls -a 查看项目文件夹下是否ignore文件,有的话直接

open .gitignore

没有的话先创建 vim .gitignore

然后在open .gitignore 打开后编辑即可,

以上设置好忽略文件后便顺利的将项目传到码云了,以为大功告成(以为需要下载的同事,克隆仓库后pod install一下就好了),然而同事在pod install以后提示本机有一个Podfile.lock文件被修改,需要提交,(后来才知道是因为我和同事的电脑上的pod版本号不一致才导致的pod install以后Podfile.lock文件不一致需要提交),于是同事便提交了,提交后项目完美运行,以为没问题了,But!!!我拉取了同事了提交日志以后

我拉取了同事提交的更新日志以后报了一个错


image.png

没错,需要我pod install或者update一下,于是照做了,做完项目可以跑成功但发现提示我跟同事一样的问题,Podfile.lock文件需要提交,于是便提交了,然而同事拉取了我的提交日志以后便和我报了一模一样的错,需要pod install或者update一下,这时候发现陷入死循环了!!!

于是考虑忽略Podfile.lock文件,但是期间尝试了很多方法都无法忽略Podfile.lock文件,就造成了上面的死循环,每次我和同事有人提交代码其他人一拉就会报错,提示install或者update一下!!!

后来发现每次Podfile.lock文件需要提交时显示的更改内容是pod版本号不一致,于是想到如果我和同事将电脑上的pod版本号统一成一个版本是不是就可以了呢,答案是肯定的(虽然这种方法不是很完美,但是目前没想到更好的方法只能先这样解决了)

于是我和同事将pod版本号统一后,再次pod install或者update的时候便没有提示Podfile.lock文件需要提交,于是终于跳出了上面的死循环了!!!

下面说一下变更本机pod版本号方法

终端输入

sudo gem uninstall -n /usr/local/bin cocoapods -v XXX (xxx是你本机pod版本号)先删除旧版本号

然后安装新版本号的pod

sudo gem install -n /usr/local/bin cocoapods -v YYY (YYY是你们商量的要用的统一pod版本号)

你可能感兴趣的:(Podfile.lock 冲突问题)