多个SVN repos,从一个更新>承诺其他

时间:2012-10-13 08:49:14

标签: svn

对于新产品版本,我们计划了以下服务器/发布结构。

release structure

出于不同的管理原因,现在最终管理层决定拥有两个不同的SVN存储库;一个在Anazon EC2上运行的生产服务器(Prod.SVN显示为红色)。其他是在本地Linux服务器上(绿色)。

我遇到了如何在技术上实现这一目标。我的问题是,本地服务器代码库(上图中的Scaling codebase)应该从本地SVN更新,但应该提交给生产SVN。我无法找到在技术上是否可行。在我看其他选项之前,我想问一下社区是否在技术上可行,如果是,是怎么回事?

3 个答案:

答案 0 :(得分:3)

与之前的答案相反

用于工作流程的纯SVN方式

使用Sacling WC

svn up
svn relocate ProdSVN
svn ci
svn relocate LocalSVN

没有Sacling WC

如果直接通信LocalSVN - > ProdSVN将成为可能,SaclingCodebase可以从同步过程中排除 (减少链,减少错误):

答案 1 :(得分:1)

  

从本地SVN更新,但应提交生产SVN。

这是分布式版本控制系统DVCS(如Bazaar,Git或Mercurial)的常见功能。

所以,在我看来,有两个解决方案:

1 /如果你还想保留SVN:使用Bazaar / Git / Mercurial签出 SVN仓库并推送/提交到另一个SVN仓库。
这是可能的,因为大多数DVCS工具都有一个插件来访问(检出/推送)SVN存储库。

2 / 将您的系统更改为完整的DVCS ,如Bazaar,它与SVN非常接近,用户不会丢失!

看看我的回复:
multiple source code repositories

答案 2 :(得分:1)

这样做的一种方法就是只使用一个repo(可能在绿色服务器上),并在生产服务器上签出该repo的发布分支。

所以工作流程将是:

在dev上结帐^/trunk(或主干的功能分支),然后从^/trunk^/branches/release进行挑选修订。