多个SVN存储库

时间:2015-01-16 22:21:05

标签: svn

SVN 1.6.12存储库,我们称之为A,我已经使用了一段时间具有以下布局:

<A>
    tool1/
        branches/
        tags/
            v1/
                dirs and files...
            v2/
                dirs and files...
        trunk/
    tool2/
        branches/
        ...

我在同一台服务器上创建了第二个存储库,我们将调用B。它的结构需要......

<B>
    tool1/
        dirs and files...
    tool2/
        dirs and files...

B工具1的内容将是A的tool1 / tags / v2的内容。 B的工具2将是A的tool2 / tags / v2的工具。

如何使用两个repos是当代码提交到A的tool1 / tags / v2时,它会被提交到B的tool1 / tags / v2以及...我为pre-commit写了一个需要运行的B钩子。我不想将代码检入A并分别检查,修改和提交B。这可能吗?也许SVN&#39; externals会做到这一点?如果不是,我接受建议。

也许externals不支持我的用例。我读了红豆svnsync参考并确定,虽然看起来肯定会做我需要的,我不想在脚本中存储身份验证信息,也不知道pre-commit会在同步时运行。

1 个答案:

答案 0 :(得分:0)

svn:externals有效,但不如我想的那么顺利。 A的结构证明是......

<A>
    tool1/
        branches/
        tags/
            v1/
            v2/ ( <-- svn:externals pointing to <B>/tool1 )
        trunk/
    tool2/
        ...
        tags/
            v1/
            v2/ ( <-- svn:externals pointing to <B>/tool2 )
        ...

...然后B ...

<B>
    tool1/
    tool2/
在提交B时,

A/toolX/v2的预提交挂钩运行(这是一个重要的要求)。

FYI。