为什么svn checkout使用错误的目录?

时间:2014-06-17 08:32:01

标签: svn jenkins

我正在使用Jenkins 1.568。

我有一个多配置项目设置。我只是添加了一个带有“debug”和“release”值的轴“target”。

我添加了Subversion源代码管理,并将其配置为签出到自定义工作区目录下的某个子文件夹。

然而,当我触发构建时,Jenkins开始将svn repo检出到自定义工作空间目录下的“target / debug”(或“target / release”)文件夹中。我希望调试和发布配置都在我在“源代码管理”配置项下指定的单个存储库中构建。

有人可以告诉我我做错了吗?

2 个答案:

答案 0 :(得分:2)

由于我(不小心)碰到了这个"问题"的抬起的票,我发现"子目录和#34;高级项目选项是此问题的解决方案。它没有"问号"旁边没有关于那个设置的解释。但经过一些谷歌搜索,我发现如果你把"。"在那里,它将为所有构建使用相同的存储库,这正是我想要的。

Jenkins门票参考: https://issues.jenkins-ci.org/browse/JENKINS-8317

答案 1 :(得分:1)

  

有人可以告诉我我做错了吗?

您正在使用多配置项目。

多配置项目在每个轴的主$WORKSPACE下都有单独的子工作区,target/debugtarget/release

当您指定自定义工作区时,即主要$WORKSPACE位置, 使用该工作区,但由于它是一个多配置项目,因此它会创建这些子工作区文件夹,并将代码签出到每个文件夹中。

您可以尝试在SVN本地文件夹名称前面使用../../,但我不知道这是否有效。无论如何,你正在打破Jenkins'设计用于多配置项目设置。它依赖于工作空间是独立的。

如果您真的想节省额外的结帐,请考虑使用单独的作业执行单个SVN结帐,然后触发多配置作业。多配置作业仍然需要通过../../引用工作区(如果这样可行)