Ios 第三方库依赖项版本控制策略
我们正在使用Cocoapods作为项目的依赖关系管理器,我意识到在版本控制方面我们并没有真正的策略 我们的podfile包含各种语法,如乐观运算符、逻辑运算符、精确版本控制。。。等Ios 第三方库依赖项版本控制策略,ios,cocoapods,dependency-management,Ios,Cocoapods,Dependency Management,我们正在使用Cocoapods作为项目的依赖关系管理器,我意识到在版本控制方面我们并没有真正的策略 我们的podfile包含各种语法,如乐观运算符、逻辑运算符、精确版本控制。。。等 pod 'RxSwift' pod 'RxCocoa', '~> 3.0' pod 'RxAlamofire', '>= 3.0.3' pod 'RxGesture', '1.0.1' 我非常清楚每个运营商都做些什么,但我不知道什么时候应该选择一个,可能的用例是什么,以及这些运营商的最佳实践 如果可以的
pod 'RxSwift'
pod 'RxCocoa', '~> 3.0'
pod 'RxAlamofire', '>= 3.0.3'
pod 'RxGesture', '1.0.1'
我非常清楚每个运营商都做些什么,但我不知道什么时候应该选择一个,可能的用例是什么,以及这些运营商的最佳实践
如果可以的话,总是使用最新版本(如
pod'RxSwift'
),或者最好锁定到特定的版本号,或者使用乐观运算符(~>
)这对于stackoverflow来说是一个边缘适当的问题,因为可能会有很多意见。这里有一个客观具体的答案
首先要充分理解
然后,您接受补丁、次要和主要版本依赖关系的容忍度取决于稳定性与对新特性的需求,您希望这些依赖关系与测试功能相交
例如:
- 如果您不信任依赖项遵循语义版本控制和/或现有版本满足所有需要,请将其锁定到特定的确切版本
- 如果您想要修复bug,但不关心新功能,请使用
操作符接受修补程序更新~
- 如果您想要新功能,但不希望现有版本中断,请允许进行小更新
- 如果您总是想要最新的,并且愿意处理破坏性的更改,那么根本不要指定版本约束