[cvsnt] Latest updates

Phil Richards news at derived-software.ltd.uk
Sat Sep 6 19:43:31 BST 2003


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-06, Glen Starrett <grstarrett at cox.net> wrote:
>  That makes sense now, thanks for the clarifications (and the enhancement!). 
>   So then 2-way merge in a more verbose description than Tony's original 
>  would be something like "better handling of merges to and from a branch".

Possibly.  It is actually quite difficult to come up with a good description,
mainly because even with this patch the facility is still somewhat limited,
and you just end up with loads of qualifications about how you can't merge
arbitrarily between branch and mainline and other branches between branches...

I use "limited" in a comparitive way - the 2.0.9 functionality is good
enough for my purposes (and I suspect most people's).  CVS (in its current
form) is probably not good place to handle anything more complicated (it
*can* be done to at least some extent, but frankly I suspect nobody would
ever notice if it was added :-).

phil

p.s. It is a credit to the original mergepoint implementation that my patch
     ended up being about 5 lines long.  (Ignoring the 2-300 lines of test
     code, and the pages of scribbling.)
p.p.s. Here is a script-segment that causes 2.0.8 problems, but not 2.0.9:
     (I won't include the implementations of the functions - it should be
     fairly obvious what is going on...  The "merge" function automatically
     resolves the conflict by including both sides of the conflict - which
     is what I was aiming at...)

	create_file "Initial file contents"
	make_branch b1
	append_to_file "Added on mainline - 1"
	use_branch b1; merge HEAD
	use_mainline;  merge b1
	use_branch b1; append_to_file "Added on b1 - 1"
	use_mainline;  merge b1
	use_branch b1; merge HEAD
	use_mainline;  append_to_file "Added on mainline - 2"
	use_branch b1; append_to_file "Added on b1 - 2";      merge HEAD
	use_mainline;  merge b1

    With 2.0.9, both the HEAD and branch files are the same:
	Initial file contents
	Added on mainline - 1
	Added on b1 - 1
	Added on b1 - 2
	Added on mainline - 2

    With 2.0.8, the branch file is the same as the one above, but the HEAD is:
	Initial file contents
	Added on mainline - 1
	Added on b1 - 1
	Added on mainline - 2
	Added on b1 - 2
	Added on mainline - 2

-- 
change name to "phil" for email



More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook