首頁 >開發工具 >composer >composer update install 區別

composer update install 區別

藏色散人
藏色散人原創
2019-08-28 13:25:137175瀏覽

composer update install 區別

composer update install 區別

1.composer install

# install 指令從目前目錄讀取composer.json 文件,處理了依賴關係,並把其安裝到vendor 目錄下。

php composer.phar install

如果目前目錄下存在 composer.lock 文件,它會從此文件讀取依賴版本,而不是根據 composer.json 文件去獲取依賴。這確保了該庫的每個使用者都能得到相同的依賴版本。

如果沒有 composer.lock 文件,composer 將在處理完依賴關係後創建它。

2.composer update

為了取得依賴的最新版本,並且升級 composer.lock 文件,你應該使用 update 指令。

php composer.phar update

這將解決專案的所有依賴,並將確切的版本號碼寫入 composer.lock。

如果你只是想更新幾個包,你可以像這樣分別列出它們:

php composer.phar update vendor/package vendor/package2

你也可以使用通配符進行批次更新:

php composer.phar update vendor/*

區別:

composer install指令(主要)用於生產環境,composer.lock檔案記錄專案目前版本信息,當執行install指令時,會偵測lock檔案的各版本與最新版本差別,如果有則更新到最新版。而composer update指令也會執行上述所講,但是如果在composer.json檔案加入庫到require欄位時,就必須用composer update指令了。但這時會更新其他庫的內容,此時如果只是添加某個庫而不更新其他庫(例如生產環境),就要使用composer require "包名:版本號" 命令了。

composer init --require=套件名稱:版本號碼 -n 也可以自動更新composer.json檔案。

一點拙見,表達不是太好,希望看到的大牛可以補充以深化理解。

附註:這個install 指令會優先根據lock 檔案中的版本去解決依賴,而並不會去做更新檢查或讀取json 中的版本號,這樣才能讓該函式庫的每個使用者都能得到相同的依賴版本。所以提交專案的時候強烈建議也要提交 lock 文件,update 指令才會檢查更新同時更新 lock 文件裡的版本號。

更多composer使用技術文章,請造訪composer使用教學專欄!

以上是composer update install 區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn