cocoapods 中“~>”的用法是什么

问题描述 投票:0回答:4

我想知道“~>”是做什么用的,因为我发现它们下面是一样的:

pod 'AFNetworking','~> 2.0.3'

pod 'AFNetworking','2.0.3'
ios cocoapods podfile podfile-lock
4个回答
135
投票
当您想要指定“直到下一个

major

 | 的版本”时,使用 
~>optimistic 运算符) 轻微 | 补丁'。例如:

~> 0.1.2
将为您提供高达0.2的版本(但不包括0.2及更高版本)

~> 0.1
将为您提供高达1.0的版本(但不包括1.0及更高版本)

~> 1.0
将为您提供高达2.0的版本(但不包括2.0及更高版本)

~> 0
将为您提供0及更高版本(与省略时相同)

其中

0.1.2
表示“我想要这个确切的版本”

这里有更多关于此的信息


12
投票
  • ~> 6.0
    将为您提供下一个版本之前的最新版本,即
    7.0
    但不包括
    7.0
    版本。

  • ~> 6.0.0
    将为您提供下一个版本之前的最新版本,即
    6.1.0
    但不包括
    6.1.0
    版本。

🎉


6
投票

乐观的经营者〜>:

'~> 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]:

6
投票

虽然上面的大多数答案都是正确的,但他们使用示例来回答问题,而不是实际解释正在发生的事情,这使得理解这个概念变得困难。为了理解乐观运算符如何工作,需要了解的关键是,cocoapods 会查看“版本号的具体程度”,以确定它将如何解释乐观运算符。 版本号的语法传达信息。开发人员发布的更新类型。该

语法

,从左到右,指的是Major.Minor.Patch更新。

Cocoapods 查看版本号中“最具体的元素”是什么,以确定它将如何解释乐观运算符。

因此,如果版本号包含有关补丁更新的信息 - 即它看起来像这样:~> 1.1.2 - 那么补丁更新就是cocoapods在实现乐观算子时关注的重点。同样,如果版本号仅与次要更新一样具体 - 即它看起来像这样:~> 1.2 - 那么在实现乐观运算符时,cocoapods 将仅关注次要更新或补丁更新。


版本号
~> 1.0.1
告诉 cocoapods 安装最新版本更新,只要该更新是 PATCH 更新;应忽略主要或次要更新。

版本号

~> 1.1
告诉 Cocoapods 安装可用的最新更新,只要这些更新是 PATCH 或 MINOR 更新,并且它应该忽略任何主要更新。


© www.soinside.com 2019 - 2024. All rights reserved.