composer
命令行
### 全局参数 > - --verbose (-v): 增加反馈信息的详细度。 > - -v 表示正常输出。 > - -vv 表示更详细的输出。 > - -vvv 则是为了 debug。 > - **--help (-h):** 显示帮助信息。 > - **--quiet (-q):** 禁止输出任何信息。 > - **--no-interaction (-n):** 不要询问任何交互问题。 > - **--working-dir (-d):** 如果指定的话,使用给定的目录作为工作目录。 > - **--profile:** 显示时间和内存使用信息。 > - **--ansi:** 强制 ANSI 输出。 > - **--no-ansi:** 关闭 ANSI 输出。 > - **--version (-V):** 显示当前应用程序的版本信息。 ### 进程退出代码 > - **0:** 正常 > - **1:** 通用/未知错误 > - **2:** 依赖关系处理错误 ### 初始化 init > ```php > php composer.phar init > ``` > > 初始化-参数 > > - **--name:** 包的名称。 > - **--description:** 包的描述。 > - **--author:** 包的作者。 > - **--homepage:** 包的主页。 > - **--require:** 需要依赖的其它包,必须要有一个版本约束。并且应该遵循 `foo/bar:1.0.0` 这样的格式。 > - **--require-dev:** 开发版的依赖包,内容格式与 **--require** 相同。 > - **--stability (-s):** `minimum-stability` 字段的值。 ### 安装 install >```php >php composer.phar install >``` > >安装-参数 > >- **--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 可以获得更快的加载支持。特别是在生产环境下建议这么做,但由于运行需要一些时间,因此并没有作为默认值。 ### 更新 update > ```php > php composer.phar update > 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** 同时更新白名单内包的依赖关系,这将进行递归更新。 ### 申明依赖 require > ```php > 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** 一并更新新装包的依赖。 ### 全局执行 global > ```php > php composer.phar global require fabpot/php-cs-fixer:dev-master > php composer.phar global update > ``` ### 搜索 search >```php >php composer.phar search monolog >``` ### 展示可用的软件包 show > ```php > php composer.phar show > php composer.phar show monolog/monolog > php composer.phar show monolog/monolog 1.0.2 > ``` > > 展示-参数 > > - **--installed (-i):** 列出已安装的依赖包。 > - **--platform (-p):** 仅列出平台软件包(PHP 与它的扩展)。 > - **--self (-s):** 仅列出当前项目信息。 ### 依赖性检测 depends > ```php > #查出已安装在你项目中的某个包,是否正在被其它的包所依赖,并列出他们 > php composer.phar depends --link-type=require monolog/monolog > ``` ### 有效性检测 validate > 在提交 `composer.json` 文件,和创建 tag 前,你应该始终运行 `validate` 命令。它将检测你的 `composer.json` 文件是否是有效的 > > ```php > php composer.phar validate > php composer.phar validate --no-check-all #不进行完整的校验 > ``` ### 依赖包状态检测 status > ```php > php composer.phar status > php composer.phar status -v > ``` ### 自我更新 self-update > ```php > #将 Composer 自身升级到最新版本 > php composer.phar self-update > sudo composer self-update > ``` > > 自我更新-参数 > > - **--rollback (-r):** 回滚到你已经安装的最后一个版本。 > - **--clean-backups:** 在更新过程中删除旧的备份,这使得更新过后的当前版本是唯一可用的备份。 ### 环境变量 > 你可以设置一些环境变量来覆盖默认的配置。建议尽可能的在 `composer.json` 的 `config` 字段中设置这些值,而不是通过命令行设置环境变量。值得注意的是环境变量中的值,将始终优先于 `composer.json` 中所指定的值。
顶部
收展
底部
[TOC]
目录
基本用法
命令行
composer.json 架构