上一篇文章我們聊了版本號以及它的一些注意事項,是不是有一丟丟小收穫呢?這一篇我們來說說composer的一些常用的命令。
全域性引數
全域性引數雖然不是必要的,但是有時候可以幫助我們更好地瞭解並使用 composer:
# 檢視composer的版本
> composer -V
# debug模式,輸出詳細的命令執行過程
> composer -vvv
# 取消互動模式( --no-interaction )
> composer init -n
# 終端不輸出任何資訊( --quiet )
> composer require vendor/package -n
從上面所列舉的常用全域性引數中可以發現一個規律:縮略形式使用”-“,完整形式使用”–”。
require和install(增)
require和install都是用來安裝依賴包的。 require通常用於安裝指定的某一個依賴包,而 install通常用於剛從版本庫克隆下來的專案它的依賴包初始化工作。
區別:前者不依賴composer.json檔案,如果檔案不存在則會自動建立。而後者必須依賴 composer.json檔案或者 composer.lock檔案,否則會報錯!
此外, install命令的行為有一點需要注意:當存在 composer.lock檔案時會以其中指定的依賴包及版本進行安裝,當不存在時,則會根據 composer.json宣告的依賴包及版本進行安裝並生成 composer.lock檔案。
# 安裝指定依賴包
> composer require vendor/package
# 專案從github上拉取下來後,安裝所有的依賴
> composer install
注: composer.lock 顧名思義,它的作用就是鎖定,記錄當前已經安裝的包資訊,保證多人開發專案版本的一致性。它將會省掉檢查新版等很多工作,直接從檔案裡讀取下載地址開始下載,會快很多。
remove(刪)
用於刪除指定的依賴包。該命令會更新 composer.json以及 composer.lock檔案。
這裡也有一個注意點:直接刪除 vendor目錄下面的包並不會更新 composer.lock檔案,下次執行install命令仍舊會安裝上。
#刪除指定的依賴包
> composer remove vendor/package
update(改)
用於更新依賴包。主要有三種使用場景:
- 更新指定的依賴包
# 更新指定的依賴包
> composer update vendor/package
- 更新當前專案的所有依賴包
# 更新當前專案的所有依賴包
> composer update
- 修改了 composer.json檔案並使其生效
# 修改了composer.json檔案使其生效,同樣會修改composer.lock檔案
> composer update
search(查)
用於搜尋依賴包。它其實就是 http://packagist.org 網站的搜尋框功能:
預設是根據包名稱、包描述等等關鍵字進行匹配,也可以做一些定製化處理:
# 只根據包名稱匹配( --only-name )
> composer search -n laravel
# 只根據包的型別匹配( --type )
> composer search laravel -t project
create-project(初始化專案)
當我們用框架初始化專案時一般會用到這個命令,例如:我需要用laravel框架開發一個部落格系統,前期專案初始化:
# 初始化專案
> composer create-project laravel/laravel blog
注: create 等價於 create-project,因為 composer 可以根據 create 唯一確定命令為create-project。實際上任何縮寫只要與之對應的命令唯一,composer都是會執行的。
dump-autoload(自動載入)
當你修改了composer.json檔案的autoload屬性值時,為了使其生效你需要執行該命令:
# 自動載入
> composer dump-autoload
config(配置)
檢視配置資訊。例如:
# 檢視當前專案的配置資訊( --list )
> composer config -l
# 檢視全域性的配置資訊( --global --list )
> composer config -g -l
注: 全域性的配置資訊在家目錄的 .composer 資料夾下,名為 config.json 。
配置命令有一個比較常用的使用場景:切換全域性映象
# 切換全域性映象
> composer config -g repos.packagist composer https://mirrors.aliyun.com/composer/
總結
本文主要介紹了一些常用的composer命令,希望對你有幫助。
本作品採用《CC 協議》,轉載必須註明作者和本文連結