Without access to git and git-submodule, I need to incorporate a shared-ip repository into two separate project repositories while minimizing the overhead of branching. People on either project need the ability to easily branch off their project's mainline trunk while also branching off the shared-ip repo. If/when the user modifies the shared-ip repo and they're ready to re-incorporate their edits into their project's mainline trunk their edits will also be regressed against the other project's mainline to ensure that their edits are compatible with both projects.
I know this is relatively easy to do with git ( except for the mechanism that does the continuous integration into a project's mainline -- which is homebrew scripts ), but is there an easy way to do this in both Subversion and Bitkeeper?
EDIT: 'svn:externals' almost solves my subversion issue, but what if the external repository isn't in Subversion.
Is there an equivalent to 'svn:externals' or 'git-submodule' for bitkeeper? Can this be done with client-side post clone hooks? How?
EDIT: Ok. I think I figured out how to do this. If you need to pull the common ip-reuse repo into both Subversion and BitKeeper, you need to have the common reuse repo in Subversion so you can use 'svn:externals' like emk indicated. For BitKeeper you need to create a post-incoming trigger which knows to do a checkout command from a subversion server.