3

我需要将最新的 SVN 标签签出到我的 Jenkins 构建作业工作区。标签是指复制的文件夹,通常用于创建里程碑。

我从一些stackoverflow问题中读到,一个可以得到最新的例如

"svn ls .../path/to/repo/tags | tail -n 1"

,但我认为这不能交给 Jenkins SCM 领域。我相信 Jenkins 需要 SVN 中的确切位置。有任何想法吗?我相信这实际上是大型项目中相当普遍的要求....

4

1 回答 1

3

在以下假设下,建议的答案几乎是正确的:

  • 使用增量字母数字永久命名方案
  • BASE 路径以某种方式添加到管道的结果(ls 输出到标签/的相对路径)

如果上述条件不满足,您必须使用稍微不同的命令和一些业务逻辑“最新标签具有最高修订号”

>svn ls -v http://mayorat.ursinecorner.ru:8088/svn/Hello/tags/
     22 lazybadg              июл 17  2010 ./
     11 lazybadg              июл 17  2010 1.0/
     22 lazybadg              июл 17  2010 1.1/

这个ls的输出可以是 gawk'ed,最近的修订在 $1 中找到,所需标签的相对路径在 $6(或 $5,我懒得测试)

于 2012-11-13T08:25:29.960 回答