您好,登錄后才能下訂單哦!
這篇文章主要介紹composer中命令\參數\說明的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
curl -sS https://getcomposer.org/installer | php
或者
php -r "readfile('https://getcomposer.org/installer');" | php
全局安裝
mv composer.phar /usr/local/bin/composer
composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer install/update --ignore-platform-reqs
安裝插件包?
composer global require "fxp/composer-asset-plugin:1.2.0“
create-project
你可以使用 Composer 從現有的包中創建一個新的項目。這相當于執行了一個 git clone
或 svn checkout
命令后將這個包的依賴安裝到它自己的 vendor 目錄。
此命令有幾個常見的用途:
你可以快速的部署你的應用。
你可以檢出任何資源包,并開發它的補丁。
多人開發項目,可以用它來加快應用的初始化。
要創建基于 Composer 的新項目,你可以使用 "create-project" 命令。傳遞一個包名,它會為你創建項目的目錄。你也可以在第三個參數中指定版本號,否則將獲取最新的版本。
如果該目錄目前不存在,則會在安裝過程中自動創建。
php composer.phar create-project doctrine/orm path 2.2.*
此外,你也可以無需使用這個命令,而是通過現有的 composer.json
文件來啟動這個項目。
默認情況下,這個命令會在 packagist.org 上查找你指定的包。
--repository-url: 提供一個自定義的儲存庫來搜索包,這將被用來代替 packagist.org。可以是一個指向 composer
資源庫的 HTTP URL,或者是指向某個 packages.json
文件的本地路徑。
--stability (-s): 資源包的最低穩定版本,默認為 stable
。
--prefer-source: 當有可用的包時,從 source
安裝。
--prefer-dist: 當有可用的包時,從 dist
安裝。
--dev: 安裝 require-dev
字段中列出的包。
--no-install: 禁止安裝包的依賴。
--no-plugins: 禁用 plugins。
--no-scripts: 禁止在根資源包中定義的腳本執行。
--no-progress: 移除進度信息,這可以避免一些不處理換行的終端或腳本出現混亂的顯示。
--keep-vcs: 創建時跳過缺失的 VCS 。如果你在非交互模式下運行創建命令,這將是非常有用的。
self-update
將 Composer 自身升級到最新版本,只需要運行 self-update
命令。它將替換你的 composer.phar
文件到最新版本。
php composer.phar self-update
如果你想要升級到一個特定的版本,可以這樣簡單的指定它:
php composer.phar self-update 1.0.0-alpha7
如果你已經為整個系統安裝 Composer(參見 全局安裝),你可能需要在 root
權限下運行它:
sudo composer self-update
--rollback (-r): 回滾到你已經安裝的最后一個版本。
--clean-backups: 在更新過程中刪除舊的備份,這使得更新過后的當前版本是唯一可用的備份。
search
search
命令允許你為當前項目搜索依賴包,通常它只搜索 packagist.org 上的包,你可以簡單的輸入你的搜索條件。
php composer.phar search monolog
您也可以通過傳遞多個參數來進行多條件搜索。
--only-name (-N): 僅針對指定的名稱搜索(完全匹配)。
require
require
命令增加新的依賴包到當前目錄的 composer.json
文件中。
php composer.phar require
在添加或改變依賴時, 修改后的依賴關系將被安裝或者更新。
如果你不希望通過交互來指定依賴包,你可以在這條令中直接指明依賴包。
php composer.phar require vendor/package:2.* vendor/package2:dev-master
--prefer-source: 當有可用的包時,從 source
安裝。
--prefer-dist: 當有可用的包時,從 dist
安裝。
--dev: 安裝 require-dev
字段中列出的包。
--no-update: 禁用依賴關系的自動更新。
--no-progress: 移除進度信息,這可以避免一些不處理換行的終端或腳本出現混亂的顯示。
--update-with-dependencies 一并更新新裝包的依賴。
update
為了獲取依賴的最新版本,并且升級 composer.lock
文件,你應該使用 update
命令。
php composer.phar update
這將解決項目的所有依賴,并將確切的版本號寫入 composer.lock
。
如果你只是想更新幾個包,你可以像這樣分別列出它們:
php composer.phar update vendor/package vendor/package2
你還可以使用通配符進行批量更新:
php composer.phar update vendor/*
--prefer-source: 當有可用的包時,從 source
安裝。
--prefer-dist: 當有可用的包時,從 dist
安裝。
--dry-run: 模擬命令,并沒有做實際的操作。
--dev: 安裝 require-dev
字段中列出的包(這是一個默認值)。
--no-dev: 跳過 require-dev
字段中列出的包。
--no-scripts: 跳過 composer.json
文件中定義的腳本。
--no-plugins: 關閉 plugins。
--no-progress: 移除進度信息,這可以避免一些不處理換行的終端或腳本出現混亂的顯示。
--optimize-autoloader (-o): 轉換 PSR-0/4 autoloading 到 classmap 可以獲得更快的加載支持。特別是在生產環境下建議這么做,但由于運行需要一些時間,因此并沒有作為默認值。
--lock: 僅更新 lock 文件的 hash,取消有關 lock 文件過時的警告。
--with-dependencies 同時更新白名單內包的依賴關系,這將進行遞歸更新。
install
install
命令從當前目錄讀取 composer.json
文件,處理了依賴關系,并把其安裝到 vendor
目錄下。
php composer.phar install
如果當前目錄下存在 composer.lock
文件,它會從此文件讀取依賴版本,而不是根據 composer.json
文件去獲取依賴。這確保了該庫的每個使用者都能得到相同的依賴版本。
如果沒有 composer.lock
文件,composer 將在處理完依賴關系后創建它。
--prefer-source: 下載包的方式有兩種: source
和 dist
。對于穩定版本 composer 將默認使用 dist
方式。而 source
表示版本控制源 。如果 --prefer-source
是被啟用的,composer 將從 source
安裝(如果有的話)。如果想要使用一個 bugfix 到你的項目,這是非常有用的。并且可以直接從本地的版本庫直接獲取依賴關系。
--prefer-dist: 與 --prefer-source
相反,composer 將盡可能的從 dist
獲取,這將大幅度的加快在 build servers 上的安裝。這也是一個回避 git 問題的途徑,如果你不清楚如何正確的設置。
--dry-run: 如果你只是想演示而并非實際安裝一個包,你可以運行 --dry-run
命令,它將模擬安裝并顯示將會發生什么。
--dev: 安裝 require-dev
字段中列出的包(這是一個默認值)。
--no-dev: 跳過 require-dev
字段中列出的包。
--no-scripts: 跳過 composer.json
文件中定義的腳本。
--no-plugins: 關閉 plugins。
--no-progress: 移除進度信息,這可以避免一些不處理換行的終端或腳本出現混亂的顯示。
--optimize-autoloader (-o): 轉換 PSR-0/4 autoloading 到 classmap 可以獲得更快的加載支持。特別是在生產環境下建議這么做,但由于運行需要一些時間,因此并沒有作為默認值。
以上是“composer中命令\參數\說明的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。