在iOSApp开发过程中提PR占去的时间较多,现就开发中常见的问题及解决策略做小小结:
- pod install过程中出现依赖库版本冲突。
- 策略:对版本号不一致的pod的Podfile进行依赖库版本号升级。
- pod install后,build过程中某些被引用的头文件找不到源。
- 这可能是一个需求多个pod同时本地开发造成的。
- 解决策略:大致确定找不到源的头文件所在的pod,然后在Podfile中暂时以commit号的形式引入包含头文件的pod。如果找不到头文件所属的pod,且被引用头文件是新加入到文件中的,可以通过blame看到是谁引入该头文件,然后问下对应的同事。
- 避免发生该问题的策略:在每次多pod开发过程中,功能开发完成后,对于依赖别的pod的独立工程(pod)进行pod install,然后运行一遍,确定该独立工程是能够运行的,然后再提PR。
以tag号进行发版的pod,当有新功能加入时,必须更新版本号,依赖该pod的其他独立pod才能使用新功能。使用
pod update 该pod
,并不会更新到新的commit,因为是以tag号为准。
(不像:branch => 'branch名称'
,此时用pod update 该pod
,会尽量更新到该pod的最新commit)。
如果发版的pod仅更新了远程仓库,还没来得及更新版本号,而这时别的pod开发急需用到待发版pod的新功能,可以利用commit号将待发版pod引入开发工程中,进行开发。由于现在大部分pod已经独立化,对于独立工程开发,可以仅在独立工程中开发。
未独立化pod开发流程:
1.拉下主工程和待开发pod
2.将主工程Podfile中待开发pod的路径指向本地待开发pod。
3.在主工程中开发,完成后,切到待开发pod文件加下,提交完成的代码。