Tracking Third-Party Sources (Vendor Branches)?

John Arbash Meinel john at arbash-meinel.com
Wed May 17 19:50:04 BST 2006


Matthew D. Fuller wrote:
> On Wed, May 17, 2006 at 10:30:35AM +0200 I heard the voice of
> Jan Hudec, and lo! it spake thus:
>> What do you mean by 'do it in a subdirectory'?
> 
> The vendor branch doesn't come in in the root of the tree, it comes in
> elsewhere in the tree.  Say, I'd have a vendor branch of bzr in
> $PROJ/imports/bzr/.  Doing it by merge'ing and mv'ing the files into a
> subdir is really icky, opens up all sorts of opportunities for trouble
> when you fail to notice a file showing up in the root, and gets even
> worse when file/dir names start conflicting.
> 
> I suppose you could do it by having the vendore branch have a bunch of
> extra dirs in it.  But that feels really nasty.

Actually, I think you are thinking back to the Arch days, where Arch
failed to put things in the proper directories.

bzr does the right thing when recording new files, because it records
what directory id they were created in. So when you merge a change which
creates a new file, if you moved the directory, they will be moved properly.

The *only* place where bzr fails is because it doesn't allow you to
rename the 'root' directory. Which is part of the NestedTrees spec.

But for lots of projects, most of the files start in a subdirectory
(look at bzr itself, ~90% of the files are underneath bzrlib/).

Yes you could run into problems if you miss a new file. But you could
always move it later. Or uncommit and fix it, and re-commit. Ultimately,
we want bzr to do the right thing, and allow you to merge in another
project into a subdirectory. (by-value nested trees). Or just reference
the other project (by-reference nested trees).

John
=:->

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 254 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060517/a2390bb5/attachment.pgp 


More information about the bazaar mailing list