在一个SVN中同步两个项目

时间:2013-04-23 17:23:48

标签: svn version-control

考虑这个SVN代码库:

/root
  /OldProject
    /src
  /NewProject
    /tags
    /branches
    /trunk
      /src

现在,让我们假设'OldProject'是人类创造的反对软件开发的最怪异的可憎之一。 'NewProject'应该是目标实现。由于不可能进行硬切换;我们需要慢慢地从一个过渡到另一个。

我想要做的是允许开发人员继续提交到OldProject并让系统将源同步到特定目录的NewProject,从而使两棵树保持最新。我的目标是让其他开发人员不需要更改他们的系统配置。它需要是无缝的(因此SVN外部很可能不是一个好的选择)。我唯一能想到的就是为OldProject使用一个临时区域,即Jenkins CI工作区,并让它具有rsync& amp;提交到NewProject的工作区。

这似乎有效,但感觉“错了”。有一个更好的方法吗?

1 个答案:

答案 0 :(得分:0)

  

它需要是无缝的(因此SVN外部很可能不是一个好的选择)

请详细说明:对于我来说,从NewProject的某些节点到OldProject 的某些节点的外部是最无缝的(和简单)解决方案

  

Jenkins CI工作区,用于OldProject并拥有它rsync&提交到NewProject的工作区

DRY原则是否违反(单一区别 - Jenkins而非人类)以及其他不需要的层:它可以(通过一些工作)通过repo中的post-commit钩子实现