我有一个maven项目,它存储在我们的GIT存储库中。当我用mvn release:prepare和mvn release:perform发布这个项目时,有时在后面的步骤中会失败,但是无论如何都会为这个版本创建一个标记。这个标记不会用mvn release:rollback删除,如果我再次准备发行版,它就会失败--这个标记已经存在错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.2:prepare (default-cli) on project lwl-module: Unable to tag SCM
[ERROR] Provider message:
[ERROR] The git-tag command failed.
[ERROR] Command output:
[ERROR] fatal: tag 'lwl-module-1.5.1' already exists
[ERROR] -> [Help 1]
[ERROR]有办法让mvn release:rollback删除GIT存储库中的最后一个标记吗?
我正在使用这个发布插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.2</version>
</plugin>发布于 2015-07-07 11:02:32
Maven发布插件目前不支持这一点。
见此处:http://maven.apache.org/maven-release/maven-release-plugin/examples/rollback-release.html
为发行版在SCM中创建的分支/标记被删除。注意:这还没有实现,所以您需要手动删除SCM中的分支/标记。有关更多信息,请参见MRELEASE-229。
门票(https://issues.apache.org/jira/browse/MRELEASE-229)自2007年开始开放。
发布于 2015-07-07 11:23:42
根据导致mvn release:perfom失败的问题,您也可以不回滚发行版,并且在修复了问题后直接运行mvn release:perform,而不运行mvn release:prepare。
发布于 2020-03-12 17:57:43
插件版本3.0.0-M1修复了这个问题。以前的版本不会删除标记。
我把这作为一个答案,以使它更加明显。我是从@jechterhoff评论中得到的。请投他一票。
https://stackoverflow.com/questions/31266388
复制相似问题