Svn 如何将共享IP合并到多个项目中,同时仍然允许轻松的分支?

Svn 如何将共享IP合并到多个项目中,同时仍然允许轻松的分支?,svn,version-control,bitkeeper,Svn,Version Control,Bitkeeper,如果不访问git和git子模块,我需要将共享ip存储库合并到两个单独的项目存储库中,同时最小化分支的开销。任何一个项目的人员都需要能够轻松地从其项目的主干线分支,同时也可以从共享ip回购分支。如果/当用户修改共享ip repo并且准备将其编辑重新纳入其项目的主干线主干线时,其编辑也将根据另一个项目的主干线进行回归,以确保其编辑与两个项目兼容 我知道用git做这件事相对容易(除了持续集成到项目主线的机制——自制脚本),但是在Subversion和Bitkeeper中有没有一种简单的方法可以做到这一

如果不访问git和git子模块,我需要将共享ip存储库合并到两个单独的项目存储库中,同时最小化分支的开销。任何一个项目的人员都需要能够轻松地从其项目的主干线分支,同时也可以从共享ip回购分支。如果/当用户修改共享ip repo并且准备将其编辑重新纳入其项目的主干线主干线时,其编辑也将根据另一个项目的主干线进行回归,以确保其编辑与两个项目兼容

我知道用git做这件事相对容易(除了持续集成到项目主线的机制——自制脚本),但是在Subversion和Bitkeeper中有没有一种简单的方法可以做到这一点

编辑: “svn:externals”几乎解决了我的subversion问题,但是如果外部存储库不在subversion中怎么办

bitkeeper是否有与“svn:externals”或“git submodule”等效的代码?这可以通过客户端克隆后挂钩实现吗?怎么做

编辑:
好啊我想我知道怎么做了。如果您需要将公共ip重用repo拉入Subversion和BitKeeper,那么您需要在Subversion中使用公共重用repo,以便可以使用“svn:externals”,如emk所示。对于BitKeeper,您需要创建一个传入后触发器,该触发器知道如何从subversion服务器执行签出命令。

在subversion中,您可以使用或简单复制subversion树中的必要目录:

svn cp svn+ssh://.../libs/foo/trunk svn+ssh://.../projects/bar/trunk/libs/foo
要在本地修改代码,只需提交到projects/bar/trunk/libs/foo

有趣的部分是合并lib/foo/trunk中的新更改。在这种情况下,您希望继续进行正常的Subversion合并。(这将是。如果您使用的是Subversion 1.4,则需要手动应用修补程序。)

不幸的是,我没有比特管理员的经验