使用SVN管理版本

时间:2016-02-25 17:47:53

标签: svn release-management

我们在SVN上有一个项目,在每次提交时我们都会添加评论我们正在修复的Jira版本。在每个Release版本(使用Jenkins)中,我们希望在上一个版本构建之后立即从SVN获取所有注释,并使用评论中提到的Jiras创建发行说明。(我们已经有了这样做的方法) 我们会为每个发行版本创建一个标记。

要解决的问题:我们需要对svn上的上一个版本进行一些标记。

一种解决方案是转到最新标记,获取最高版本号(标记创建),返回到主干,并在标记创建提交之后立即获取所有提交。

但是..我们希望在主干日志上看到这个Release标记,所以通过svn日志的简单外观我们可以看到Release发布到哪里... 为此,我们找到的唯一方法是提交一个假文件,只是为了将修订注释为#34;构建版本###"。

以更好的方式做任何建议吗?

1 个答案:

答案 0 :(得分:0)

您可以:

,而不是额外提交文件列表

Pure-SVN Way

  • /trunk中创建(任意)传统属性,其值为“上次发布的修订版”
  • 之前的propget和propset | propedit +每次发布后提交属性更改

Mercurial + HGSubversion方式

(某种程度上 lazier

  • 维护Subversion repo的RO克隆
  • 每次发布​​后,从上游SVN更改(dev-round中不需要)并使用简单的revset +模板获取更改日志(在Mercurial中),在SVN方面根本没有任何操作

PS:我可以写这个正则表达式为你简单,肮脏的草稿作为标记良好的回购的例子

>hg log -r "last(last(tag(),2)):first(last(tag(),2))"
1365:1.8.4
1366:
1367:
1368:
1369:
1370:1.8.5

这是纯HG标签,对于正确克隆的SVN-repo它也可以使用(SVN标签将是HG标签)