是否有像npm版本一样的PHP / Composer工具?

时间:2017-03-30 15:39:40

标签: php git composer-php

是否有自动方式更新composer.json中的版本号并在发布前添加必要的标签,就像npm version的方式一样?

我的意思是,如果你有一个带有行"version": "2.1.3"的composer.json,并执行:

composer version minor

它会执行以下操作:

  • composer.json中的版本号更新为2.2.0
  • 触发composer update更新composer.lock
  • 制作新的git commit
  • 制作新的git代码v2.2.0

我知道composer version命令不存在,但有没有相同的工具?

2 个答案:

答案 0 :(得分:1)

npm version执行你很可能不需要Composer的东西:

  • 如果有其他可用方法,版本号不会记录在composer.json中 - 并且因为您之后提到的是Git,它们可用。
  • 不需要更新锁定文件中的依赖项。当您处理的项目包含在其他地方时,将忽略锁定文件。
  • 由于项目中没有任何变化,git commit不会做任何事情。
  • 这一切都让您在Git存储库中创建一个新标签。把它放到Composer中意味着你要用另一个命令交换一个命令,没有任何大的好处,除非你使用一些相对的version参数,你不必查找你正在处理的当前版本号。 / LI>

总而言之,我只是简单地标记新版本对于Composer来说已经足够了。您可能需要安装一些基础架构并配置为让世界了解新版本:

  • 如果您的软件包是开源的,并且在packagist.org上,您应该有一个post-commit挂钩,以便在新版本可用时立即通知它们。这是Github上的标准选项,我不知道其他源代码主机。
  • 否则,如果您必须提供已关闭的源代码,您可能会开始使用任何系统创建备用包信息源的新更新周期(无论是Satis,本地托管的Packagist,Toran代理还是私有包装)< / LI>

但这取决于你如何设置。

答案 1 :(得分:0)

如果出于某种原因并且尽管有很多反对意见,您仍然希望使用OP等要求的工具,那么https://www.npmjs.com/package/composer-version的效果就很好。