[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: merge should copy-with-history

From: William Uther <will+_at_cs.cmu.edu>
Date: 2002-08-08 17:18:50 CEST

Hi all,

On Thursday, August 8, 2002, at 02:17 AM, Branko Èibej wrote:

> I don't agree. Merge was broken by design, and Philip's patch unbreaks
> it somewhat. See my other post.

I'm not as sure as everyone else that the correct fix has been chosen
for this borkenness. The results are close to right, but I'll post my
concerns anyway. If I understand the original problem correctly then
you want the history recorded to make merging easier (from issue 838).
However, and I agree this is a minor point, it will make merging new
files give very different output to 'svn log' than files that already
existed. I think this shows a small semantic issue with this solution -
I'm not sure how much of a problem this is.

This example is similar to the one in Issue 820 (a post-1.0 possible
feature).

svn commit -m "original stuff" myFile # (rev 1)
svn cp http://.../trunk/project/ http://.../branch/blah/project/ # (rev
2)
svn switch http://.../branch/blah/project/
edit myFile myOtherFile
svn add myOtherFile
svn commit -m "changes on branch" # (rev 3)
svn switch http://.../trunk/project/
svn merge -r 2:HEAD http://.../branch/blah/project/
svn commit -m "merged from branch blah" # (rev 4)

If my understanding is correct, then the you'll get the following output
for log:

svn log myFile # in my random format

----------
Rev 4: * merged from branch blah
----------
Rev 1: * original stuff
----------

svn log myOtherFile # in my random format

----------
Rev 4: * merged from branch blah
----------
Rev 3: * changes on branch
----------

Note that the log for myOtherFile includes the logs messages from the
branch, whereas the log for myFile does not.

I think the reason is that copy-with-history is NOT what you want here
(although it is a good approximation). What you really want are those
post-1.0 merge properties telling that help diff figure out repeated
merges. They give merge history (solving the diff problem that prompted
this discussion) without log history (which merges shouldn't touch - or
at least should be consistent about).

later,

\x/ill :-}

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Aug 8 17:21:37 2002

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.