没有版本控制的 Composer 更新

Composer update without versioning

我正在开发用于另一个应用程序的作曲家包。该包位于单独的存储库中。有时,当我在开发过程中修复包中的某些内容时,我必须通过分配 git 标记来增加其版本,以便使用该包的应用程序可以下载它的最新版本。我最终有很多标签。

有没有更合适的方法允许更新(composer update cmd)应用程序中正在开发的包而不使用数千个标签?

假设我更改了包,提交并将更改推送到存储库。当我在应用程序的范围内执行 composer update 时,它​​会更新包,虽然它的版本没有随着最后一次更改而增加,但包的 repo 中只有新提交。

有很多标签有什么不好?

你可以依赖分支。每次 运行 更新时,Composer 都会克隆存储库并检查该分支的最新提交。我强烈建议依赖一个使用版本别名的分支:"your/lib": "dev-feature as 2.2.0" - 这将满足其他库在特定版本中需要这个的依赖,并且它使这个分支基于哪个版本更清楚。

composer update 更新包的方式通常有两种:tagsbranches。既然不想用标签,这里就只说分支

例如,如果您正在 master 分支上工作,并且希望 master 分支的更改可以安装到您的应用程序中,您需要更改 [=] 中包的依赖项13=] 作为

{
    "require": {
        "vendor/package": "dev-master"
    }
}

更详细的可以参考versions.