Composer中~和^的含义
关于这两个字符的含义,网上已经很多的文章进行过介绍了。但是,我觉得介绍的都比较官方你。
你用力去理解的话,也是可以理解的。
本篇文章不是对哪些介绍的再次赘述。只是提供一个比较简单直接的方法,帮助你去区分。
一、背景知识
一个扩展包的通常是这样的。
\www\wwwroot\web>php artisan --version
Laravel Framework 6.20.27
这里的laravel的版本是6.20.27。
6 表示主版本号
20 表示次版本号
27 表示修订号
二、^和~的功能
^和~的出现是为了对扩展包进行版本锁定的。它们的区别如下:
^表示锁定主版本号。
~表示锁定次版本号。
三、举例
我们假定这个扩展的主版本号6,中间的次版本号最大是99,末尾的修订号是999。
^6.20 表示版本的范围是6.20.0到6.99.999
~6.20 表示版本的范围是6.20.0到6.20.999
四、扩展
- 头部版本
也就是主版本号。
因为在正则中的^,一般都是表示匹配一个开始字符的位置。功能跟这个类似,可以类比理解。 - 中间版本
也就是次版本号
~ 我们一般用来泛指一个有序数列,比如1~9。所以这个字符一般也就出现在中间部分。可以类比记录,表示对中间的操作。
————————————————
版权声明:本文为CSDN博主「hxthon」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u013866352/article/details/117415531
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。