maven-release-plugin 可以在两个远程存储库中创建标签吗?
Posted
技术标签:
【中文标题】maven-release-plugin 可以在两个远程存储库中创建标签吗?【英文标题】:Can maven-release-plugin create a tags in two remote repositories? 【发布时间】:2017-08-08 15:33:41 【问题描述】:我有两个 maven 存储库:repo1 和 repo2。它们没有连接(我的意思是没有父\子\依赖关系)
我想使用 maven-release-plugin 在存储库中创建标签。
是否可能出现以下情况:
我在 repo1 中执行 release:prepare
和 release:perform
。在 repo1 和 repo2 中创建新标签和分支。
如果这不可能,如果它们是两个存储库中的任何关系,这是否可能?
我使用 git 存储库。
【问题讨论】:
所以你的意思是有两个项目存在于两个不同的存储库中?因此,您发布了位于 repo 1 中的项目 1,那么为什么需要在项目 2 的 repo 2 中制作标签? repo2 是repo1 分支的副本。有些用户无权查看 repo1,只能查看 repo2。我想自动创建 repo2 的版本,当我发布 repo1 时不要手动执行它。而且我不确定所描述的操作是这里的最佳解决方案,我已准备好听取有关如何以其他方式执行此操作的建议:) 【参考方案1】:maven-release-plugin
仅适用于在 pom.xml
中配置的 SCM-URL。
不能在两个不同的 git 存储库中创建标签或分支。
也许服务器端 git hooks
可能是您的解决方案。
[...]
接收后
post-receive 钩子在整个过程完成后运行,可用于更新其他服务或通知用户。
示例包括通过电子邮件发送列表、通知持续集成服务器或更新工单跟踪系统 - 您甚至可以解析提交消息以查看是否需要打开、修改或关闭任何工单。
[...]
在一台 git 服务器上安装 post-receive
钩子,并根据您的条件在另一台 git 服务器上创建新标签或分支。
【讨论】:
谢谢,我会试试的。以上是关于maven-release-plugin 可以在两个远程存储库中创建标签吗?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 maven 不替换 maven-release-plugin 发布版本的环境变量?