Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
On 2003-09-05, Glen Starrett <grstarrett at cox.net> wrote: > What is "bidirectional merging", and how is it used? It sounds > interesting, but I'm not sure how I would use it. The old code very nicely handled repeated merging from one place (branch) to another (mainline). The new code extends this to allow a merge operation to be performed in the opposite direction after having done this. I "needed" it for the following scenario (flying fish branches that live for significant periods of time): On branch (b1): ... do some work on fred cvs update -jHEAD fred ... do some more work on fred cvs update -jHEAD fred ... do some more work on fred cvs update -jHEAD fred Deliver branch code to mainline: I used to have to do: cvs update -jHEAD -jb1 fred Now I will be able to: cvs update -jb1 fred (As a side effect, this will also record the delivery of the branch as a mergepoint on the mainline, something the 2 -j form can't.) And, if I wanted to, I could continue development on b1, merge from HEAD again (or not as the case may be), and then deliver the branch to the mainline (again). Not that I do that very often. With the previous version, using "cvs update -jb1 fred" could result in merge conflicts because it was reapplying changes to the mainline. It's not perfect - you tend to find commits for a lot of null-deltas coming in. But I'm working on that :-) phil -- change name to "phil" for email