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

Re: Request for Feature: svn resolved

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2004-12-15 17:01:00 CET

On Dec 15, 2004, at 8:48 AM, Dale Worley wrote:

> I would assume that since Subversion knows the exact lineage of every
> line
> in every file that its merging algorithm would be a lot more
> sophisticated
> than "diff the two versions, apply the patch to the third version".

Nope. You assume incorrectly. 'svn merge -rX:Y' retrieves foo from
revision X, then retrieves foo from revision Y. It puts both files
into .svn/tmp/. Then it runs a 'diff3' algorithm on {tmpfile1,
tmpfile2, working file}. There's absolutely no "history sensitive"
merging going on.

This is one of the merge-tracking problems we need to solve someday...
see notes/merge-tracking.txt.

> (And if it doesn't, what's the point of keeping the history of file
> moves, etc.?)
>

The *repository* is definitely keeping track of history. That's why
'svn log foo.c' will trace through all the moves/renames of foo.c.
It's just that nobody's yet taught the 'svn merge' command to make use
of all that history.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Dec 15 17:05:35 2004

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