Composer支持通过require字段安装Git分支、标签或commit:分支需加dev-前缀如"dev-main";commit需用#连接分支如"dev-main#abc1234";标签直接写版本号如"v6.4.0"或"1.2.3"。

可以直接在 composer.json 的 require 字段中指定 Git 分支名、标签(tag)或 commit hash,Composer 会从对应仓库拉取代码并安装。
使用分支名安装
适用于想跟踪开发中的功能分支(如 dev-feature/login 或 dev-main)。注意分支名前必须加 dev- 前缀,这是 Composer 的约定:
-
"monolog/monolog": "dev-main"→ 安装main分支最新提交 -
"your-vendor/package": "dev-develop"→ 安装develop分支
执行 composer install 或 composer update your-vendor/package 即可生效。
使用 commit hash 安装
适合需要锁定到某次精确提交的场景(例如修复了某个 bug 但尚未发版):
-
"your-vendor/package": "dev-main#abc1234"→ 安装main分支上abc1234这个 commit -
"your-vendor/package": "dev-master#7f8e9d1a"→ 指向具体 SHA-1 哈希值
注意:commit hash 必须跟在分支别名后,用 # 连接,不能单独写成 "abc1234"。
使用标签(tag)安装
标签通常对应正式版本,语法和稳定版一致,但需确保该 tag 存在于远程仓库:
-
"symfony/console": "v6.4.0"→ 安装带v前缀的 tag -
"your-vendor/package": "1.2.3"→ 安装无v前缀的 tag(取决于项目打标习惯)
如果 tag 不存在或拼写错误,Composer 会报错提示“Could not find package…”。
临时覆盖仓库地址(可选)
若要从私有 Git 仓库或 fork 安装,可在 composer.json 中添加 repositories 配置:
"repositories": [
{
"type": "vcs",
"url": "https://github.com/yourname/package.git"
}
]
然后照常在 require 中引用分支或 commit。Composer 会优先从你指定的仓库拉取。
基本上就这些。关键是记清格式:dev-分支名、dev-分支名#commit、或标准语义化版本号(对应 tag),不复杂但容易忽略前缀和符号细节。










