Advice on organising development with inter-related projects please.

John Arbash Meinel john at arbash-meinel.com
Fri Jan 18 22:34:06 GMT 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Talden wrote:
> I'm looking for some guidance on sharing code between projects.
> 
> Currently, in CVS, we have two teams that cannot see each others
> project repositories. A shared body of code, which both teams
> contribute to, is symlinked into the CVS tree.
> 
> This arrangement leaves CVS believing that, in both repositories, the
> shared code is local and so all commands act as though the code is
> local.  This allows for some convenient and low-effort collaboration.
> 
> Clearly this won't work in bzr or practically any other VCS
> (especially distributed ones).
> 
> AFAIK you can't nest branches and have bzr operations flow over a full
> tree of nested branches.
> 
> How would you manage such a situation in bzr?
> 
> --
> Talden
> 
> 

You *can* nest branches, but 'bzr commit' in the outer one won't cause a
commit in the nested one.

So my recommendation would probably be to do nested checkouts. Something
like:

bzr checkout $PROJECT project
cd project
bzr checkout $SUBPROJECT lib1
...

It does add a bit more work, since now people need to be aware of which
project/subproject they are working on, and do a commit in that directory.

It wouldn't be very hard to provide a "bzr rcommit" or "bzr rstatus" etc
to do the recursive commit/status. We also have some work done to
support http://bazaar-vcs.org/NestedTreeSupport
Which is meant to address properly nesting and building up
meta-projects. It got a lower priority due to our performance push at
the moment, but as I understand the data structures are in place, and we
mostly just need to finish the UI.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHkSleJdeBCYSNAAMRAg3+AJ9pp6NPfPaL+WAA/l34bfX463Mx4gCgwxLN
WcI32Z7WHRkb2GTIi+9EIE4=
=WYRY
-----END PGP SIGNATURE-----



More information about the bazaar mailing list