2011-11-23 23 views
0

我目前在一个稍微不寻常的环境中工作。我们正在Ubuntu虚拟机上编写代码,这些代码无法看到我们的目标SVN存储库。使用Hudson将更改推送到另一个SVN库

我们使用的是由Hudson调查的本地SVN存储库。

The Hudson env 可以查看目标SVN回购。

所以我想使用Hudson在成功构建之后将SVN更改从本地回购推送到目标回购。

我需要保留SCM的历史。我们将是唯一承诺进入这两个存储库的人。

有谁知道这是可能的吗?

谢谢! L -

+0

这听起来非常像分布式VCS。你知道,首先在本地回购工作,然后推动目标回购是Git和Mercurial的原因,不是吗? – thiton

+0

是的,我很乐意使用Git!不幸的是,我受到我客户现有基础设施的限制... – laura

回答

0
  1. 哈德森本身不能任何数据,只有,据我所知
  2. 哈德森没有工作拷贝在SVN方面
  3. 我想,你(?)可以尝试在哈德森配置工作,其中,在成功打造:
    • (准备WE)
    • svn co <DEVREPO> .svn up(根据从上面的准备)
    • svn relocate <DEVREPO> <CLIENTREPO>
    • svn ci -m "Mirror revisions on build"

(缺少一些选项在我的草案 - 配置,authentifcation,非交互模式)

1

可以还试图通过git-svn使用git本地存储库和与该svn存储库的接口。因此,Hudson将使用git-svn克隆(您将从git本地回购站推送到该克隆),并通过shell脚本从/执行svn回购执行git svn fetch|dcommit