[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] Splitting a project to config based

From: John A Meinel
Subject: Re: [Gnu-arch-users] Splitting a project to config based
Date: Fri, 03 Dec 2004 09:52:29 -0600
User-agent: Mozilla Thunderbird 0.9 (Windows/20041103)

Aaron Bentley wrote:
Milan Cvetkovic wrote:

Suppose I have a big project BASE which I want to split into BCHILD and BLIB, each containing significant portion of files from B, say 50% each.

I would create a new project CFG with config files.

Should I tag BCHILD and BLIB of BASE, and remove unneeded files in each?

I'd recommend that approach.  In general, it makes merging easier.

I agree with tagging. I've actually done this. One more step that you might consider is after you have done tag and then deleted the files you want and moved them around, you can issue a:

cd $BASE
tla sync-tree $BCHILD
tla sync-tree $BLIB
tla commit -s "Sync with child projects"

sync-tree basically says that I want it to look like I pulled in the patches. After doing this, you can actually star-merge back and forth between your child and your base.

It sounds like you don't really need that functionality, but I thought to let you know it was available.

There are a couple caveats with the merging, for new file additions, they will show up in exactly the new place, instead of properly located in the old place. Example:


After tagging, and then removing the extra files you get

  $BASE/src -> $BCHILD/stuff1
  $BASE/lib -> $BLIB/

If you add a file in:

When you star-merge back into $BASE, you will get the file in

instead of

There has been some discussion about how to fix this, because it is frequently useful to keep a broken up project, and one that stays together. (Also if I've renamed a directory, and merge with someone else who added a file in that directory, it will show up in the old place.)


Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]