小編給大家分享一下composer如何更新指定的依賴包,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
composer 更新指定的依賴包
compoesr
的require
/update
都可以更新指定的依賴包(升級/降級)。
require
更為靈活些,未安裝則進行安裝,已安裝則根據傳入的版本號進行升級
或降級
。update
則無法在命令行傳入指定的版本號
,需要先手動編輯composer.json
,指定新的版本號
,然后執行更新命令。
#忽略 composer require google/protobuf --ignore-platform-reqs -vvv
示例
// 安裝包 composer require hashids/hashids:2.0.0 // 已安裝 升級 composer require hashids/hashids:3.0.0 // 已安裝 降級 composer require hashids/hashids:2.0.4
update
命令無法在命令行中指定包版本號
,需要手動修改composer.json
文件
// 安裝包 composer require hashids/hashids:2.0.0
錯誤用法
composer update hashids/hashids:3.0.0
正確用法示例
vim composer.json "require": { "hashids/hashids": "3.0.0" }, :wq #升級到3.0.0 composer update hashids/hashids vim composer.json "require": { "hashids/hashids": "2.0.4" }, :wq #降級到2.0.4 composer update hashids/hashids
同時,如果我們編輯更新了多個包的版本號,則無法使用 composer update package1
composer update package2
composer update package3
的方式去依次的更新,因為composer
會校驗配置文件的完整性json vs lock
,你指定要我更新A
,但你B
的version
在json
和lock
中不一致,你卻不要我更新它,這是有問題的。
這時只能使用composer update
全局更新依賴,注意是全局包的更新操作,一些你未更改但使用了版本號范圍的包也有可能被更新升級,請慎用!
install
可以用于項目初始化后,初次安裝依賴,且會優先讀取composer.lock
中的版本號,以盡可能的保證協作開發中包版本的一致性。
composer.lock
中存有的包版本記錄相當于執行 composer require packageName:versionNo
,不存有的相當于執行composer update packageName with versionRule in composer.json
。
當我們協同開發時,A 在本地安裝了新的依賴包,或者更新了依賴包,會寫入 composer.lock/composer.json
,A 上傳至倉庫,B 拉取至本地后,應執行一次 composer install
來同步團隊的版本變更。
所以協作開發中,我們建議要同時將composer.lock/composer.json
上傳至遠端倉庫。
大于/大于等于:>1.2.3 >=1.2.3 小于/小于等于:<1.2.3 <=1.2.3 確切的版本號:1.2.3 ~1.2.3: 1.2.3 <= version < 1.3 ^1.2.3: 1.2.3 <= version < 2.0 { "php": ">=7.0", "ext-swoole": ">=4.0.0", "lib-curl": ">=7.29.0" }
以上是“composer如何更新指定的依賴包”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。