「〜>」が何のために使用されているのか知りたいのですが、それらは以下と同じであることがわかります。
pod 'AFNetworking','~> 2.0.3'
pod 'AFNetworking','2.0.3'
上手、 ~>
(optimistic演算子)は、次のバージョンmajor| マイナー| patch '。例えば:
~> 0.1.2
は、0.2までのバージョンを提供します(ただし、0.2以上は含まれません)。
~> 0.1
は、1.0までのバージョンを提供します(ただし、1.0以上は含まれません)。
~> 0
は0以上のバージョンを取得します(省略された場合と同じ)
どこ 0.1.2
は、「この正確なバージョンが必要」を意味します
~> 6.0
は、次のバージョンの前の最新バージョン7.0
を取得しますが、7.0
バージョンは含みません。
~> 6.0.0
は、次のバージョンの前の最新バージョン6.1.0
を取得しますが、6.1.0
バージョンは含みません。
????
上記の答えのほとんどは正しいですが、実際に何が起こっているのかを説明するのではなく、例を使用して質問に答えるので、概念を理解することは困難です。オプティミスティック演算子がどのように機能するかを理解するために知っておくべき重要なことは、cocoapodsがどのようにバージョン番号が特定されているかを見て、オプティミスティック演算子を解釈する方法を決定することです。
バージョン番号の構文は情報を伝えます。開発者がリリースするアップデートのタイプ。その syntax は、左から右に、Major.Minor.Patchの更新を指します。
Cocoapodsは、バージョン番号の最も具体的な要素が何であるかを調べて、楽観的演算子を解釈する方法を決定します。したがって、バージョン番号にパッチの更新に関する情報が含まれている場合(つまり、次のようになります:~> 1.1.2
)、楽観的演算子を実装するときにcocoapodsが焦点を当てているのはパッチの更新です。同様に、バージョン番号がマイナーアップデートと同じくらい具体的である場合-つまり、次のようなものです:~> 1.2
-cocoapodsは、マイナーORパッチアップデートのいずれかであるアップデートにのみ焦点を当てます楽観演算子を実装するとき。
バージョン番号~> 1.0.1
は、その更新がパッチ更新である限り、最新バージョンの更新をインストールするようにcocoapodsに指示します。メジャーアップデートまたはマイナーアップデートは無視してください。
~> 1.1
のバージョン番号は、利用可能な最新の更新をインストールするようCocoapodに指示します。これらの更新がPATCHまたはMINOR更新であり、メジャー更新を無視する必要があります。
楽観演算子〜>:
'~> 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]: