玛迪的英文译语怎两岸青山相对出打一生肖 么说-托业报名
2023年4月5日发(作者:亚里士多德错觉)
composer命令详解
composer命令⾏
你已经学会了如何使⽤命令⾏界⾯做⼀些事情。本章将向你介绍所有可⽤的命令。
为了从命令⾏获得帮助信息,请运⾏composer或者composerlist命令,然后结合--help命令来获得更多的帮助信息。
全局参数
下列参数可与每⼀个命令结合使⽤:
--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
在“库”那⼀章我们看到了如何⼿动创建⽂件。实际上还有⼀个init命令可以更容易的做到这⼀点。
当您运⾏该命令,它会以交互⽅式要求您填写⼀些信息,同时聪明的使⽤⼀些张九龄诗人 默认值。
it
初始化-参数
--name:包的名称。
--description:包的描述。
--author:包的作者。
--homepage:包的主页。
--require:需要依赖的其它包,必须要有⼀个版本约束。并且应该遵循foo/bar:1.0.0这样的格式。
--require-dev:开发版的依赖包,内容格式和--require相同。
stability(-s):minimum-stability字段的值。
安装install
install命令从当前⽬录读取⽂件,处理依赖关系,并把其安装到vendor⽬录下。
stall
如果当前⽬录下存在⽂件,它会从此⽂件读取依赖版本,⽽不是根据去获取依赖。这确保了该库的每个使⽤者
都能得到相同的依赖版本。
如果没有⽂件,composer将在处理依赖关系后创建它。
安装-参数
--prefer-source:下载包的⽅式有两种:sourse和dist。对于稳定版本composer将默认使⽤dist⽅式。⽽source表⽰版本控制源。如果--
prefer-source是被启⽤的,composer将从source安装(如果有的话)。如果想要使⽤⼀个bugfix到你的项⽬,这是⾮常有⽤的。并且
可以直接从本地的版本库直接获取依赖关系。
--prefer-dist:与--prefer-source相反,composer将尽可能的从dist获取,这将⼤幅度的加快在buildservers上的安装。这也是⼀个回避
Git问题的途径,如果你不清楚如何正确的设置。
--dry-run:如果你只是想演⽰⽽并⾮实际安装⼀个包,你可以运⾏--dry-run命令,它将模拟安装并显⽰将会发⽣什么。
--dev:安装require-dev字段中列出的包(这是⼀个默认值)。
--no-dev:跳过require-dev字段中列出的包。
no-scripts:跳过⽂件中的定义的脚本。
--no-plugins:关闭plugins。
--no-progress:移除进度信息,这可以避免⼀些不处理换⾏的终端或者脚本出现混乱的显⽰。
--optimize-autoloader(-o):转换PSR-0/4autoload到classmap可以获得更快的加载⽀持。特别是在⽣产环境下建议这么做,但由于
运⾏需要⼀些时间,因此并没有作为默认值。
更新update
为了获取依赖的最新版本,并且升级⽂件,你应该使⽤update命令。
date
这将决绝项⽬的所有依赖,并将确切的版本号写⼊。
如果你只是想更新⼏个包,你可以像这样分别列出它们:
datevendor/packagevendor/package2
你还可以使⽤通配符进⾏批量更新:
datevendor/*
更新-参数
--prefer-source:当有可⽤的包时,从source安装。
--prefer-dist:当有可⽤的包时,从dist安装。
--dry-run:模拟命令,并没有实际的操作。
--dev:安装require-dev字段中列出的包(这是⼀个默认值)。
--no-dev:跳过require-dev字段中列出的包。
--no-scripts:跳过⽂件定义的脚本。
--no-plugins:关闭plugins。
--no-progress:移除进度信息,这可以避免⼀些不处理换⾏的终端或者脚本出现混乱的显⽰。
--optimize-autoloader(-o):转换PSR-0/4autoload到classmap可以获得更快的加载⽀持。特别是在⽣产环境下建议这么做,但由于
运⾏需要⼀些时间,因此并没有作为默认值。
--lock:仅更新lock⽂件的hash,取消有关lock⽂件过时的警告。
--with-dependencies同时更新⽩名单内包的依赖关系,这将进⾏递归更新。
声明依赖require
require命令增加新的依赖包到当前⽬录的composer⽂件中。
quire
在添加或者改变依赖时,修改后的依赖关系将被安装或者更新。
如果你不希望通过交互指定依赖包,你可以在这条命令中直接声明依赖包。
quirevendor/package:2.*vendor/package2:dev-master
声明依赖-参数
--prefer-source:当有可⽤的包时,从source安装。
--prefer-dist:当有可⽤的包时,从dist安装。
--dev:安装require-dev字段中列出的包。
--no-update:禁⽤依赖关系的⾃动更新。
--no-progress:移除进度信息,这可以避免⼀些不处理换⾏的终端或者脚本出现混乱的显⽰。
--update-with-dependencies:并更新新装包的依赖。
全局执⾏global
global命令允许你在COMPOSER_HOME⽬录下执⾏其它命令,像install、require或者update。
并且如果你将$OMPOSER_HOME/vendor/bin加⼊到了$PATH环境变量中,你就可以⽤它咋命令⾏中安装全局应⽤。下⾯是⼀个例⼦:
obalrequirefabpot/php-cs-fxer:dev-master
现在php-cs-fixer就可以在全局范围使⽤了(假设你已经设置了你的PATH)。如果稍后你想更新它,你只需要运⾏globalupdate:
obalupdate
搜索search
search命令允许你为当前项⽬搜索依赖包,通常它只要搜索上的包。你可以简单的输⼊你的搜索条件。
archmonolog
您也可以通过传递多个参数来进⾏多条件搜索。
搜索-参数
--only-name(-N)仅针对指定的名称搜索(完全匹配)。
展⽰show
列出所有可⽤的软件包,你可以使⽤show命令。
ow
如果你想看到⼀个包的详细信息,你可以输⼊⼀个包名称。
owmonolog/monolog
你甚⾄可以输⼊⼀个团建包的版本号,来显⽰该版本的详细信息。
owmonolog/monolog1.0.2
展⽰-参数
--installed(-i):列出已安装的依赖包。
--platform(-p):仅列出平台软件包(配合配合它的扩展)。
--self(-s):仅列出当前项⽬信息。
依赖性检测depends
depends命令可以查出已安装在你项⽬中的某个包,是否正在被其它的包所依赖,并列出他们。
pends--li唐诗三百首杜甫 nk-type=requiremonolog/monolog
依赖性检测-参数
--link-type:检测的类型,默认为require也可以是require-dev。
有效性检测validate
在提交⽂件,和创建tag前,你应该始终运⾏validate命令。它将检测你的⽂件是否是有效的。
lidate
有效性检测参数
--no-check-all:composer是否进⾏完整的校验。
依赖包状态检测status
如果你经常修改依赖包⾥的代码,并且它们是从source(⾃定义源)进⾏安装的,那么status命令允许你进⾏检查,如果你有任何本地的更
改它将会给予提⽰。
atus
你可以使⽤--verbose系列参数(-v|vv|vvv)来获取更新的详细:
atus-v
⾃我更新self-update
将composer⾃⾝升级到最新版本,只要运⾏self-update命令。它将替换你的⽂件到最新版本。
lf-update
如果你想要升级到⼀个特定的版本,可以这样简单的指定它:
lft-update1.0.0-alpha7
如果你已经为整个系统安装composer,你可能需要在root权限下运⾏它:
sudocomposerself-up对联横批 date
⾃我更新-参数
--rollback(-r):回滚奥你已经安装的最后⼀个版本。
--clean-backups:在更新删除旧的备份,这使得更新过后的当前版本是唯⼀可⽤的备份。
更改配置config
config命令允许你编辑composer的⼀些基本设置,⽆论是本地的或者全局的⽂件。
nfig--list
更改配置-使⽤⽅法
config[options][setting-key][setting-value1]...[setting-valueN]
setting-key是⼀个配置选项的名称,setting-value1是⼀个配置的值。可以使⽤数组作为配置(github-procols),多个setting-value是允许
的。
更改配置-参数
--global(-g):操作位于$COMPOSER_HOME/的全局配置⽂件。如果不指定该参数,此命令将影响当前项⽬的
⽂件,或者--file参数所指向的⽂件。
--editor(-e):使⽤⽂本编辑器打开⽂件。默认情况下始终是打开当前项⽬的⽂件。当存在--global参数时,将会打开
全局⽂件。
--unset:移除由setting-key指定名称的配置选项。
--list(-l):显⽰当前配置选项的列表。当存在--global参数时,将会显⽰全局配置选项的列表。
--file=\"...\"(-f):在⼀个指定的⽂件上操作,⽽不是。注意:不能与--global参数⼀起使⽤。
修改包来源
除了修改配置选项,config命令还⽀持通过以下⽅法修改来源信息:
/foo/bar
创建项⽬create-project
你可以使⽤composer从现有的包中创建⼀个新的项⽬。这相当于执⾏了git蝌组词 clone或者SVNcheckout命令后将这个包的依赖安装到它⾃⼰的
vendor⽬录。
此命令有⼏个常见的⽤途:
-你可以快速的部署你的应⽤再别康桥徐志摩原文 。
-你可以检出任何资源包,并开发它的补丁。
-多⼈开发项⽬,可以⽤它加快应⽤的初始化。
-
要创建基于composer的新项⽬,你可以使⽤“create-project”命令。传递⼀个包名,它会为你创建项⽬的⽬录。你也可以在第三参数中指定版
本号,否则将获取最新的版本。
如果该⽬录不存在,则会在安装过程中⾃动创建。
eate-projectdoctrine/ormpath2.2.*
此外,你也可以⽆需使⽤这个命令,⽽是通过现有的⽂件来启动这个项⽬。
默认情况下,这个命令会在上查找你指定的包。
创建项⽬-参数
--repository-url:提供⼀个⾃定义的存储库来搜索包,这将被⽤来替代。可以是⼀个指向composer资源库的httpURL,
或者是指向某个⽂件的本地路劲。
--stability(-s):资源包的最低稳定版本,默认为stable。
--prefer-source:当有可⽤的包时,从source安装。
--prefer-dist:当有可⽤的包时,从dist安装。
--dev:安装require0dev字段中列出的包。
--no-install:禁⽌安装包的依赖。
--no-plugins:禁⽤plugins。
--no-scripts:禁⽌在根资源包中定义的脚本执⾏。
--no-progress:移除进度信息,这可以避免⼀些不处理换⾏的终端或者脚本出现混乱的显⽰。
--keep-vcs:创建时跳过缺失的VCS。如果你在⾮交互模式下运⾏创建命令,这将是⾮常有⽤的。
打印⾃动加载索引dump-autoload
某些情况下你需要更新autoloader,例如在你的包中加⼊了⼀个新的类。你可以使⽤dump-autoload来完成,⽽不必执⾏install或者update命
令。
此外,它可以打印⼀个优化过的,符合PSR-0/4规范的类的索引,这也是出于对性能的可靠性考虑。在⼤型的应⽤中会有许多类⽂件,⽽
autoload会占⽤每个请求的很⼤⼀部分时间,使⽤classmaps或许在开发时不太⽅便,但它在保证性能的前提下,任然可以获得PSR-0/4规
范带来的便利。
打印⾃动加载索引-参数
---optimize(-o):转换PSR-0/4autoloading到classmap获得更快的载⼊速度。这特别使⽤于⽣产环境,但可能需要⼀些时间来运⾏,因此它⽬前不是默认设置。
---no-dev:禁⽤autoload-dev规则。
查看许可协议licenses
列出已经安装的每个包的名称、版本、许可协议。可以使⽤--format-json参数来获取json格式的输出。
执⾏脚本run-script
你可以运⾏此命令来⼿动执⾏脚本,只需要指定脚本的名称,可选的--no-dev参数允许你禁⽤开发者模式。
诊断diagnose
如果你绝得发现了⼀个bug或是程序⾏为变得怪异,你可能需要运⾏diagnose命令,来帮助你检测⼀些常见的问题。
agnose
归档archive
此命令⽤来对指定包的指定版本进⾏zip/tar归档。它也可以⽤来归档你的整个项⽬,不包括excluded/ignored(排除/忽略)的⽂件。
chivevendor/package2.0.21--format=zip
归档-参数
---format(-f):指定归档格式:tar或者zip(默认为tar)。
---dir:指定归档存放的⽬录(默认为当前⽬录)。
获取帮助信息help
使⽤help可以获取指定命令的帮助信息。
lpinstall
环境变量
你可以设置⼀些环境变量来覆盖默认的配置。建议尽可能的在的config字段中设置这些值,⽽不是通过命令⾏设置环境变量。
值得注意的是环境变量中的值,将始终优先于中所指定的值。
COMPOSER
环境变量COMPOSER可以为⽂件制定其他的⽂件名。
COMPOSER_ROOT_VERSION
通过设置这个环境变量,你可以指定root包的版本,如果程序不能从VCS上猜测出版本号,并且未在⽂件中申明。
COMPOSER_VENDOR_DIR
通过设置这个环境变量,你可以指定composer将依赖安装在vendor以外的其它⽬录中。
COMPOSER_BIN_DIR
通过设置这个环境变量,你可以指定bin(VendorBinaries)⽬录到vendor/bin以外的其它⽬录。
http_proxyorHTTP_PROXY
如果你是通过HTTP代理来使⽤composer,你可以使⽤http_proxy或者HTTP_PROXY环境变量。只要简单的将它设置为代理服务器的
URL。许多操作系统已经为你的服务设置了此变量。
建议使⽤http_proxy(⼩写)或者两者都进⾏定义。因为某些⼯具,像Git或者curl将使⽤http_proxy⼩写的版本。另外,你还可以使⽤git
来单独设置Git的代理。
no_proxy
如果你是使⽤代理服务器,并且想要对某些域名禁⽤代理,就可以使⽤no_proxy环境变量。只需要输⼊⼀个逗号相隔的域名排除列表。
此环境变量接受域名、IP、以及CIDR地址快。你可以将它限制到⼀个端⼝(例如:80)。你还可以把它设置为*来忽略所有的HTTP代理请
求。
HTTP_PROXY_REQUEST_FULLURI
如果你使⽤了HTTPS代理,但它不⽀持request_fulluri标签,那么你应该设置这个环境变量为false或者0,来防⽌composer从request_fulluri
读取配置。
COMPOSER_HOME
COMPOSER_HOME环境变量允许你改变composer的主⽬录。这是⼀个隐藏的、所有项⽬共享的全局⽬录(对本机的所有⽤户都可⽤)。
它在各个系统上的默认值分别为:
---*nix/home/
---OSX/Users/
-Windowsc:Users
COMPOSER_HOME/
你可以在COMPOSER_HOME⽬录中放置⼀个⽂件。在你执⾏install和update命令时,composer会将它与你项⽬中的
⽂件进⾏合并。
若全局和项⽬存在相同配置项,那么项⽬中的⽂件拥有更⾼的优先级。
COMPOSER_CACHE_DIR
COMPOSER_CACHE_DIR环境变量允许你设置composer的缓存⽬录,这也可以通过cache-dir进⾏配置。
它在各个系统上的默认值分别为:
*nixandOSX$COMPOSER_HOME/cache。
Windowsc:Users
COMPOSER_PROCESS_TIMEOUT
这个环境变量控制着composer执⾏命令的等待时间(例如:git命令)。默认值为300秒(5分钟)。
COMPOSER_DISCARD_CHANGES
这个环境紫气东来是什么意思 变量控制着discard-changesconfig_options。
COMPOSER_NO_INTERACTION
如果设置为1,这个环境变量将使composer在执⾏每⼀个命令时都放弃交互,相当于对所有命令都使⽤了--no-interaction。可以在搭建虚拟
机/持续集成服务器时这样设置。
更多推荐
composer是什么意思poser在线翻译读音例
发布评论