上一篇我们讲了9个命令,这回把接下来的命令都说一说。
顾名思义,使用此命令可以编辑 Composer 的一些基本设置,无论是本地的 composer.json 或者全局的 config.json 文件。
我们可以使用 composer config --list 来看看当下可以配置的所有项(composer默认项 + 当前项目项,当前项目优先)。
当然我们可以使用 composer config --list --global 列出项目的全局配置(composer默认项 + 全局配置项,全局优先)。
通过config我们首先可以查看当前项目的配置信息,比如bin文件夹,cache等等,这里列出几个。
[repositories.packagist.org.type] composer
[repositories.packagist.org.url] https://packagist.phpcomposer.com
[process-timeout] 300
[use-include-path] false
[preferred-install] auto
[notify-on-install] true
[github-protocols] [https, ssh]
[vendor-dir] vendor (F:\wwwroot\BeiGeXiongDiLian/vendor)
[bin-dir] {$vendor-dir}/bin (F:\wwwroot\BeiGeXiongDiLian/vendor/bin)
[cache-dir] C:/Users/Administrator/AppData/Local/Composer
[data-dir] C:/Users/Administrator/AppData/Roaming/Composer
[cache-files-dir] {$cache-dir}/files (C:/Users/Administrator/AppData/Local/Composer/files)
[cache-repo-dir] {$cache-dir}/repo (C:/Users/Administrator/AppData/Local/Composer/repo)
[cache-vcs-dir] {$cache-dir}/vcs (C:/Users/Administrator/AppData/Local/Composer/vcs)
[cache-ttl] 15552000
[cache-files-ttl] 15552000
[cache-files-maxsize] 300MiB (314572800)
[bin-compat] auto
.......
当然除了查看,我们也能修改某个配置项,比如下面的代码
composer config process-timeout 1900
composer config -g process-timeout 1700
当然如果配置项是数组形式,你可以多写几个value,空格分开。
当然config还有一些参数,比如--editor (用编辑器打开修改),--unset (移除某个配置项)等。
主要用来安装一个项目,比如我们在安装yii2的时候就有如下的语句
composer create-project --prefer-dist yiisoft/yii2-app-basic basic
这相当于执行了一个 git clone 或 svn checkout 命令后将这个包的依赖安装到它自己的 vendor 目录。
这个命令也有挺多的参数
依赖性检测,命令可以查出已安装在你项目中的某个包,是否正在被其它的包所依赖,并列出他们。
假设我们为程序安装了abei2017/yii2-emoji,而yii2-emoji依赖于emojione/emojione,看看执行depends命令的结果。
composer depends emojione/emojione
abei2017/yii2-emoji 1.0.0 requires emojione/emojione (^3.1)
composer depends abei2017/yii2-emoji
yiisoft/yii2-app-basic - requires abei2017/yii2-emoji (^1.0)
看明白了吧?默认是根据json文件的require配置项检测,也可以根绝require-dev来检查,传递一个参数即可,如下面代码。
composer depends --link-type=require-dev emojione/emojione
错误诊断,要注意的是这个命令只是检查composer.json及composer一些配置项是否正确,不检查依赖逻辑。看看下面代码,检查的流程。
Checking composer.json: OK
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com oauth access: OK
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0 87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B 0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: OK
某些情况下你需要更新 autoloader,例如在你的包中加入了一个新的类。你可以使用 dump-autoload 来完成,而不必执行 install 或 update 命令。
它有两个参数:--optimize (-o) & --no-dev,其中--optimize (-o)是个性能优化选项,在生产环境如下命令可以提高加载性能。
composer dumpautoload --optimize
不加--optimize这一选项,你可能会发现20%到25%的性能损失。
允许你在 COMPOSER_HOME 目录下执行其它命令,像 install、require 或 update。看下面代码
composer global require abei2017/yii2-emoji
将 abei2017/yii2-emoji 全局安装并使用。
这个参数比较简单,如果你用 composer info 则会直接列出当前项目的所有依赖(名称+版本+简介),如果你使用 composer info abei2017/yii2-emoji跟了一个扩展,则将扩展的composer.json内容整理下显示出来。
将当前项目所有依赖的协议都列出来,方便你查询,如下面的代码
//composer licenses
abei2017/yii2-emoji 1.0.0 MIT
behat/gherkin v4.4.5 MIT
bower-asset/bootstrap v3.3.7 MIT
bower-asset/jquery 2.2.4 MIT
bower-asset/jquery.inputmask 3.3.6 http://opensource.org/licenses/mit-license.php
bower-asset/punycode v1.3.2 none
bower-asset/typeahead.js v0.11.1 none
bower-asset/yii2-pjax v2.0.6 MIT
cebe/markdown 1.1.2 MIT
.......
好简单,列出所有命令。
列出所有可用的扩展,我们也可以使用比如 composer show abei2017/yii2-emoji 查看一个扩展的详情,还可以帅选 composer show abei2017/*
这个命令有一些参数
这个命令也不错,等于composer show -lo
删除一个扩展,该命令首先改动composer.json,删除相应的依赖,然后执行。如果要一次删除多个扩展,可以一次写出,空格分开即可。
这个命令也有很多参数,比如删除库后不进行依赖的更新等。
添加一个扩展并且更新到composer.json内
composer require abei2017/yii2-emoji
改命令参数也很多
写了好多,防止大家看着累,先到这里,下一篇把剩下的几个说完。另外针对于requrie / remove的参数比较多,会单独拿出一篇来说。
G
M
T
Detect languageAfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBengaliBosnianBulgarianCatalanCebuanoChichewaChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEsperantoEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekGujaratiHaitian CreoleHausaHebrewHindiHmongHungarianIcelandicIgboIndonesianIrishItalianJapaneseJavaneseKannadaKazakhKhmerKoreanLaoLatinLatvianLithuanianMacedonianMalagasyMalayMalayalamMalteseMaoriMarathiMongolianMyanmar (Burmese)NepaliNorwegianPersianPolishPortuguesePunjabiRomanianRussianSerbianSesothoSinhalaSlovakSlovenianSomaliSpanishSundaneseSwahiliSwedishTajikTamilTeluguThaiTurkishUkrainianUrduUzbekVietnameseWelshYiddishYorubaZulu | AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBengaliBosnianBulgarianCatalanCebuanoChichewaChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEsperantoEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekGujaratiHaitian CreoleHausaHebrewHindiHmongHungarianIcelandicIgboIndonesianIrishItalianJapaneseJavaneseKannadaKazakhKhmerKoreanLaoLatinLatvianLithuanianMacedonianMalagasyMalayMalayalamMalteseMaoriMarathiMongolianMyanmar (Burmese)NepaliNorwegianPersianPolishPortuguesePunjabiRomanianRussianSerbianSesothoSinhalaSlovakSlovenianSomaliSpanishSundaneseSwahiliSwedishTajikTamilTeluguThaiTurkishUkrainianUrduUzbekVietnameseWelshYiddishYorubaZulu |
---|
Text-to-speech function is limited to 200 characters
Options : History : Feedback : Donate | Close |
---|