您好,登錄后才能下訂單哦!
這篇文章主要介紹composer易忽略的知識有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1.composer 版本號 ~ ^ *
(1) 包版本:*
{ "require": { "monolog/monolog": "1.0.*" } }
1.0.* 這表示任何從 1.0 開始的開發分支,它將會匹配 1.0.0、1.0.2 或者 1.0.20。
(2) 包版本:~
~1.2 相當于 >=1.2,<2.0, 即 1 版本,匹配前1 位 1.
~1.2 只意味著 .2 部分可以改變,但是 1. 部分是固定的。
(3) 包版本:^
^1.2.3 相當于>=1.2.3 <1.3 即匹配前2 位 1.2
2.composer install
(1)如果已經存在composer.lock時,讀取composer.lock下載依賴。
(2)如果沒有 composer.lock 文件,讀取 composer.json 文件,處理依賴關系,并把其安裝到 vendor 目錄下。
也就是說本地有一份composer.lock,你就可以保證無論過去了多久,你都能拉到相同的依賴。
所以應該把 composer.lock 放到 git 版本庫中,這樣可以確保你項目中的每一個人、每一臺電腦,不管什么系統,都能拉取到一模一樣的依賴,以減少潛在的依賴對部署的影響。
3.composer update
讀取composer.json中指定的依賴,然后拉取依賴放入vendor目錄下,并且把所有拉取依賴的確切的版本號寫入composer.lock文件中。
(1)那么什么時候需要使用composer update呢?
比如某擴展發布的新版本有我們需要的新功能時,這時我們需要更新該擴展,我們update時指定具體更新的擴展名,如composer update package 而不要直接composer update。因為直接composer update后,所有的擴展都會更新,風險很大。
4.總結:
(1)composer update 根據composer.json來更新的,并把擴展的版本號寫入到composer.lock中。
(2)composer install 根據composer.lock來更新的
(3)開發過程中 少用 composer update ,應該用 composer install
(4)如果新加一個包,可以使用:composer require "包名:版本號"
以上是“composer易忽略的知識有哪些”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。