我尝试发布一个maven项目到新版本。
因此我用
mvn发布:准备发布:执行
发布那个版本并不是什么大事。不幸的是,它是一个大项目,过去有700多个版本。每个版本都有自己的标签。
示例:
repo
+ branches
+ tags
+ project-1.0.0
+ project-1.0.1
+ project-1.0.2
+ project-1.0.3
(...)
+ project-7.9.2
+ trunk
+ src
+ pom.xml
使用release-plugin它下载所有的标签,使其约190 GB
的代码和旧标签.
这是一个问题,因为它需要一个小时来 checkout 所有的标签。
我不能简单地“删除旧标签”。这将使release:prepare release:perform
停止释放进程,并显示以下消息:
[INFO] de.e_nexus.projekt.xdiff ........................... SKIPPED ?
[INFO] ------------------------------------------------------------------------ ?
[INFO] BUILD FAILURE ?
[INFO] ------------------------------------------------------------------------ ?
[INFO] Total time: 05:52 min (Wall Clock) ?
[INFO] Finished at: 2022-11-10T22:23:19+01:00 ?
[INFO] ------------------------------------------------------------------------ ?
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.3:prepare (default-cli) on project projekt: Unable to tag SCM ?
[ERROR] Provider message: ?
[ERROR] The svn tag command failed. ?
[ERROR] Command output: ?
[ERROR] svn: E160013: File not found: revision 3861, path '/repo/tags/projekt-1.0.0' ?
[ERROR] -> [Help 1] ?
[ERROR] ?
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. ?
[ERROR] Re-run Maven using the -X switch to enable full debug logging. ?
[ERROR] ?
[ERROR] For more information about the errors and possible solutions, please read the following articles: ?
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
如何摆脱旧标签和能够释放使用Maven释放插件?
1条答案
按热度按时间8fsztsew1#
只 checkout 项目的 Backbone.js 。您不需要 checkout 所有标签和分支就可以从 Backbone.js 创建新标签。
如果我应该只 checkout Backbone.js ,释放过程如何能够创建释放标签?你如何能告诉错误消息指出了 Backbone.js 文件夹?
Maven使用Subversion客户端在仓库中创建一个新的标记。这不需要所有的标记都在客户端上。检查SVNBook | Tags中的示例。示例显示您可以创建一个“URL到URL”标记(根本没有工作副本)或一个“工作副本到URL”标记(标记工作副本的当前状态)。不需要在本地拥有所有的标记。
SVNBook |
svn copy
中还提供了其他示例。由于标记是一个非常常见的操作,我相信Maven知道如何正确地完成它。
PS伟大的多显示器设置在您的个人资料@格里姆!