這是官網的話
Caret#
^ 運算子的行為非常相似,但它更接近語義版本控制,並且始終允許不間斷更新。例如,^1.2.3 相當於 >=1.2.3 =0.3.0
這是編寫函式庫程式碼時推薦的操作符,以實現最大的互通性。
範例:^1.2.3
作曲家
這是官網的話
Caret#
^ 運算子的行為非常相似,但它更接近語義版本控制,並且始終允許不間斷更新。例如,^1.2.3 相當於 >=1.2.3 =0.3.0
這是編寫函式庫程式碼時推薦的運算符,可實現最大的互通性。
範例:^1.2.3
作曲家
@查爾斯~
和^
的意思很接近,在x.y
的情況下是一樣的都代表x.y ,但是版本號是<code>x.的情況下有區別,舉個例子:
~1.2.3 代表
1.2.3
^1.2.3 代表
1.2.3
感謝@北月武士指正
^符號含義,用於匹配下一個重要版本
簡單來說:
作曲家.json
雷雷
執行sudocomposer install以後效果如下
匹配作曲家庫詳情頁的最新一個重要版本
https://packagist.org/package...
備註下:犯這個錯誤是因為一個前提條件,我一般只關心次號版本,而不關心修改號,所以如果你一直指定~x.y和^x.y確實是一樣的,其餘庫的版本號就是使用x.y.z 的版本規範命名的