info-cvs
[Top][All Lists]
Advanced

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

branching blues


From: Steve Widmar
Subject: branching blues
Date: Mon, 22 Mar 2004 20:58:07 -0800

To whom it may engage:
I am in the midst of evaluating a few different approaches to implement a new feature that will impact many files in of one of our cvs modules.
 
Before I began, I read up on branching & figured that establishing multiple branches (one per approach) off of a tag of the HEAD would allow for this.  Please note that I also fully expected to be able to not only change existing files but also be able to add files and even subdirectories on a given branch (whatever made sense for the approach).   Here's a quick sketch of what I'm describing:
 
tagged-snapshot-of-HEAD
   |
   |- branch1/approach1
   |
   |- branch2/approach2
   |
  ...
   |- branchN/approachN
 
Commits (including new files and directories) of course can still happen on the HEAD, but just not on files in play for this new feature (my belief being that this will keep it simple as possible for merging: I guessed that if changes happen only on one side, the cvs magic mechanical merge should go smooth(er) ).
 
I expected that we would make whatever progress on each branch and when the clock stops we just choose whichever branch that looks best and then merge that into the HEAD (more or less).
 
You might already shaking your head in horror, but I'll finish the story anyway...
 
So, I'm in process on this approach. 
 
After checking out a branch, and changing certain files and adding new ones in pursuit of implementing the new feature ...
Imagine my surprise when I find that, while I can commit changes to files on the branch, and add/commit new files to directories that existed prior to branching,
if i want to add/commit a file that is in a directory that did not exist prior to branching I can, but it adds the file to the Attic leaf subdir of the actual dir it lives in.
 
I assume this marks the end of that idea, since if i cant commit new dirs/files on a branch and each approach may need to commit new dirs/files I need to manage this some other way.
 
My questions:
1. is there any way using cvs to manage this multiple-approach idea
2. if not, how does this issue get handled (I assume I'm not the first one to face this kind of problem).
 
Any help?
Thanks, in advance -
Steve

reply via email to

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