0

我正在使用 SVN 和 Hudson 进行构建。我在 SVN 中有两个分支,比如 Branch1 和 Branch2。我需要来自两个分支的文件进行构建。如何使用 hudson 从多个分支获取文件?如果我在 hudson SVN 插件中也提供了 branch2 url,它会给出类似 E155000 的错误:'C:\Hudson_CI\jobs\SVN_TEST\workspace' 已经是不同 URL 的工作副本;请指导。

4

1 回答 1

0

您不应该需要来自 2 个分支的文件来进行构建。分支是(应该是)源代码的完整副本。所以,你一开始就有根本性的错误。签出component1component2进行构建是可以的,但签出同一组件的branch1branch2并不是 SVN(或任何与 SVN 一起使用的工具)的设计方式。

但是,关于您的问题,Hudson 可以从两个(或更多)不同的位置进行检查。

当你配置Repository URL时,它下面是Local module directory (optional)。当使用超过 1 个 URL 进行结帐时,您必须为不同的结帐提供不同的文件夹(在您的工作区下)。打电话给他们branch1branch2在你的情况下。

结帐完成后,您可以通过${WORKSPACE}/branch1${WORKSPACE}/branch2分别引用它们。

但是,如果碰巧,您希望来自 2 个不同 URL 的结帐文件出现在同一目录下……请阅读我的第一段。你真的必须重新考虑你在用 SVN 做什么。您仍然可以在 Hudson 中执行此操作,方法是运行一个 shell/batch 脚本步骤,该步骤将在结帐后复制${WORKSPACE}/branch2内容。${WORKSPACE}/branch1

于 2012-12-18T20:50:37.247 回答