Je veux savoir à quoi sert le "~>", car je trouve que ce sont les mêmes ci-dessous:
pod 'AFNetworking','~> 2.0.3'
pod 'AFNetworking','2.0.3'
Bien, ~>
(l'opérateur optimiste ) est utilisé lorsque vous souhaitez spécifier une version 'jusqu'au prochain major | mineur | patch '. Par exemple:
~> 0.1.2
vous obtiendrez une version jusqu'à 0,2 (mais pas 0,2 et plus)
~> 0.1
vous obtiendrez une version jusqu'à 1.0 (mais n'incluant pas 1.0 et plus)
~> 0
vous obtiendrez une version de 0 et plus (comme si elle avait été omise)
où 0.1.2
signifierait "Je veux cette version exacte"
~> 6.0
vous obtiendrez la dernière version avant la prochaine version qui est 7.0
mais sans inclure le 7.0
version.
~> 6.0.0
vous obtiendrez la dernière version avant la prochaine version qui est 6.1.0
mais sans inclure le 6.1.0
version.
????
Bien que la plupart des réponses ci-dessus soient correctes, elles répondent à la question à l'aide d'exemples plutôt que d'expliquer réellement ce qui se passe, ce qui rend difficile la compréhension du concept. L'essentiel à savoir pour comprendre le fonctionnement de l'opérateur optimiste est que les cocoapods cherchent à voir comment le numéro de version est spécifique pour déterminer comment il interprétera l'opérateur optimiste.
La syntaxe d'un numéro de version transmet des informations sur. le type de mise à jour qu'un développeur publie. Cela syntaxe , de gauche à droite, fait référence aux mises à jour Major.Minor.Patch.
Cocoapods cherche à voir quel est l'élément l'élément le plus spécifique dans le numéro de version pour déterminer comment il interprétera l'opérateur optimiste. Donc, si le numéro de version contient des informations sur les mises à jour des correctifs - c'est-à-dire qu'il ressemble à ceci: ~> 1.1.2
- puis les mises à jour de correctifs sont ce sur quoi les cocoapods se concentrent lors de l'implémentation de l'opérateur optimiste. De même, si le numéro de version est aussi spécifique que les mises à jour mineures, c'est-à-dire qu'il ressemble à ceci: ~> 1.2
- alors les cocoapods se concentreront uniquement sur les mises à jour qui sont soit mineures OR mises à jour du correctif lors de l'implémentation de l'opérateur optimiste.
Un numéro de version de ~> 1.0.1
indique à cocoapods d'installer la mise à jour de la version la plus récente, tant que cette mise à jour est une mise à jour PATCH; Les mises à jour majeures ou mineures doivent être ignorées.
Un numéro de version de ~> 1.1
indique à Cocoapods d'installer les mises à jour les plus récentes disponibles, tant que ces mises à jour sont des mises à jour PATCH ou MINOR, et qu'il doit ignorer toutes les mises à jour majeures.
opérateur optimiste ~>:
'~> 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]: