Composer 帮助文档无中文支持,因所有 help 文本硬编码于源码中且官方未提供多语言功能;composer list 列出全部命令(不依赖 composer.json),composer help <cmd> 查具体用法,参数语法遵循 Symfony 规范,括号具语义,需结合 shell 工具过滤关键信息。

Composer 没有中文帮助文档,所有 composer help 输出都是硬编码英文,改 locale、装插件、加参数(比如 --lang=zh)全无效——这不是配置问题,是设计如此。
为什么你搜不到“中文手册”?
Composer 的帮助文本直接来自源码中各 Command 类的 setHelp() 方法,全部写死为英文。官方从未提供多语言支持,第三方翻译常滞后、漏项、甚至把参数行为写错。你看到的每一行 --no-dev 描述、每个 [package] 说明,都是本地二进制里自带的字符串,断网也能显示,但永远是英文。
composer list 和 composer help 到底怎么用才不踩坑
别指望 composer help 自己列出所有命令——它只在当前目录有 composer.json 时才加载项目上下文命令;没这个文件,连 require 都可能报 Command "help" is not defined。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 查“有哪些命令可用”:用
composer list,它不依赖composer.json,空目录也能跑 - 查“某个命令怎么用”:必须指定名字,如
composer help require或composer require --help - 插件命令(如
composer normalize)不会出现在list或help里,除非已通过composer require --dev composer-normalize安装并完成 autoload 注册 -
composer list -a能看到别名(比如create是create-project的别名),composer list -v多一行描述,但依然不解释参数逻辑
看懂 help 输出里的括号和参数类型
Composer 遵循 Symfony Console 规范,括号不是装饰,是语法契约:
-
<package>:必填位置参数,漏掉就报Not enough arguments -
[--dev]:布尔开关,出现即生效,不带值;和--no-dev互斥,同时写时后者被静默忽略 -
[--version=VERSION]:可选但带默认值,等号右边是默认值,实际可用--version ^2.0或--version=^2.0 - 位置参数(如包名
monolog/monolog)必须放在所有选项之后,否则会被当成某个--xxx的值吞掉
终端里快速定位关键参数
帮助输出长且无分段,手动翻效率低。直接用 shell 工具过滤:
- Linux/macOS:
composer update -h | grep -- "--no"或composer require -h | grep -A2 "version" - PowerShell:
composer install -h | findstr "--no-dev" - 想确认某选项是否支持?别信博客,
composer help install输出里没写的,就是不支持
真正容易被忽略的是:help 里写的“默认行为”未必等于实际执行路径——比如 composer install --no-dev 文档说“默认 false”,但若 composer.json 里配了 "config": {"platform": {"php": "8.1"}},某些判断会绕过默认值逻辑。参数组合和顺序会影响最终行为,不能只看单条 help 输出。

















