我想知道“〜>”是什么用于,因为我发现它们是相同的:
pod 'AFNetworking','~> 2.0.3'
pod 'AFNetworking','2.0.3'
答案 0 :(得分:55)
嗯,当你想指定一个版本“直到下一个 major |时,会使用~>
(乐观运算符) 次要 | 补丁”。例如:
~> 0.1.2
会为您提供最高0.2(但不包括0.2和更高)的版本
~> 0.1
会为您提供高达1.0的版本(但不包括1.0及更高版本)
~> 0
将为您提供0及更高版本(与省略的相同)
其中0.1.2
表示'我想要这个确切的版本'
答案 1 :(得分:1)
~> 6.0
将在下一个版本7.0
之前为您提供最新版本,但不包括7.0
版本。
~> 6.0.0
将在下一个版本6.1.0
之前为您提供最新版本,但不包括6.1.0
版本。
答案 2 :(得分:0)
乐观的算子〜>:
'~> 0.1.2' Version 0.1.2 and the versions up to 0.2, not including 0.2 and higher
'~> 0.1' Version 0.1 and the versions up to 1.0, not including 1.0 and higher
'~> 0' Version 0 and higher, this is basically the same as not having it.
For more information, regarding versioning policy, [see][1]:
答案 3 :(得分:0)
尽管以上大多数答案都是正确的,但他们使用示例来回答问题,而不是实际解释正在发生的事情,这使得很难理解这个概念。为了理解乐观运算符的工作原理,需要了解的关键是可可脚目将观察版本号是特定于,以确定它将如何解释乐观运算符。
版本号的语法传达信息。开发人员要发布的更新的类型。 syntax从左到右是指Major.Minor.Patch更新。
Cocoapods希望查看版本号中的最具体元素是什么,以确定它如何解释乐观运算符。因此,如果版本号包含有关补丁的信息更新-即看起来像这样:~> 1.1.2
-然后补丁更新是coapapods在实现乐观运算符时关注的重点。同样,如果版本号仅与次要更新一样具体-即看起来像这样:~> 1.2
-那么在实现乐观运算符时,cocoapods将仅关注次要或补丁更新。
版本号~> 1.0.1
告诉cocoapods安装最新的版本更新,只要该更新是PATCH更新即可。重大更新或次要更新应被忽略。
版本号~> 1.1
告诉Cocoapods安装可用的最新更新,只要这些更新是PATCH或MINOR更新,它就应该忽略任何主要更新。