中文包名不被允许,name字段必须为全小写英文vendor/package格式,含中文、大写字母、下划线等均会触发invalid package information错误;国内镜像仅同步packagist.org索引,不主动收录。

中文包名本身不会被 Packagist 拒绝,但 name 字段必须是英文格式;国内镜像(如阿里云、腾讯云)不主动收录你的包,只同步 packagist.org 的索引——所以“搜不到”永远不是镜像的问题,而是你还没让 packagist.org 收录成功。
composer.json 的 name 字段为什么不能写中文
Packagist 在提交时会校验 name 字段是否符合 vendor/package-name 格式:全小写、仅允许字母、数字和短横线(-),禁止中文、空格、下划线、大写字母。写错直接报 Invalid package information。
-
"name": "zhangsan/chinese-utils"✅ 合规,vendor 与你在 Packagist 的用户名一致即可 -
"name": "张三/中文工具"❌ 提交失败,会被拒绝 -
"name": "zhang_san/chinese_utils"❌ 下划线不合法 -
"name": "ZhangSan/chinese-utils"❌ vendor 大写不合规
中文只能出现在 description 或 keywords 里,不影响索引,但能提升搜索可读性。
打 Git tag 时哪些命名会导致 Packagist 忽略版本
Packagist 只认语义化版本 tag,并且只从远程仓库拉取 tag —— 它完全忽略 main 或 dev-main 分支。tag 名写错,等于没发布。
-
v1.0.0、v2.1.3-beta.1✅ 标准 SemVer,带v前缀最稳 -
1.0.0、2.1.3✅ 也支持,但部分旧 webhook 可能漏触发 -
1.0、v1、release-1.0.0❌ 不识别为正式版 -
V1.0.0(大写 V)、v1.0.0-final❌ 解析失败
打完 tag 必须显式推送:git tag v1.0.0 -m "first stable" → git push origin v1.0.0。用 git push --tags 容易误推测试 tag,导致索引混乱。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
GitHub Webhook 配错了会怎样
2023 年底起 Packagist 彻底关闭自动发现,没配好 Webhook 就等于每次发版都要手动点 “Update”,极易遗漏。常见错误包括:
- Payload URL 写成
https://packagist.org/api/github?username=xxx❌ 这是旧地址,已失效;正确地址是https://packagist.org/api/github - Content type 选了
application/x-www-form-urlencoded❌ 必须选application/json - 事件只勾了
Pushes,但没勾Tag push events或Releases❌ tag 推送不触发 - 没去 GitHub 的
Recent Deliveries查状态码,盲目以为“已保存” ✅ 实际可能返回 404 或 400
验证方式:推一个新 tag 后,5 秒内打开 Packagist 包页,看 Last updated 时间是否刷新;否则立刻查 webhook 日志。
为什么 composer search 找不到你的包,但 packagist.org 页面能打开
这是最典型的同步延迟现象。国内镜像(如 https://mirrors.aliyun.com/composer/)每 15–30 分钟批量拉取一次 packagist.org 全量索引,不是实时同步。
- 先确认包已在
https://packagist.org/packages/zhangsan/chinese-utils可访问 ✅ - 再等 30 分钟后执行
composer search chinese-utils,或换源验证:composer config -g repo.packagist composer https://mirrors.ustc.edu.cn/composer/ - 别改
repositories数组试图“覆盖镜像”——Composer 3.x+ 硬编码只认repo.packagist全局配置
真正卡点永远在 packagist.org 的首次收录和 Git 仓库的合规性,而不是你本地的镜像设置或网络。










