我已经使用composer.json在packagist上创建了存储库,如下所示:
{
"name" : "vendor/packagename",
"description" : "some package",
"license" : "proprietary",
"extra" : {
"branch-alias" : {"dev-master" : "v2.0.0-dev"}
}
}
在我的本地计算机上,我创建了composer.json,如下所示:
{
"require": {
"vendor/packagename" "dev-master"
},
"extra" : {
"branch-alias" : {"dev-master" : "v2.0.0-dev"}
}
}
当我尝试使用命令从存储库安装软件包时:
php composer.phar install
我期待别名版本(v2.0.0)。但我得到的是最后一个版本而不是别名版本(v2.0.0)。因此,我需要在安装
dev-master
时获取别名版本。
为什么上面的代码不起作用?也许我对别名的理解是错误的?
您必须在包含的包中定义如下内容:
{
"name" : "vendor/packagename",
"description" : "some package",
"license" : "proprietary",
"extra" : {
"branch-alias" : {"dev-master" : "2.0.x-dev"}
}
}
您可以在任何其他项目中要求该包,如下所示:
{
"require": {
"vendor/packagename" "2.0.x-dev"
},
}
在这种情况下,“2.0.x-dev”将被重定向到 master 分支。
这有好处,例如master 分支更新到另一个版本,包的开发人员可以将分支别名更改为仍包含 2.0.x 版本的分支。