You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by "KARR, DAVID (ATTSI)" <dk...@att.com> on 2010/05/17 18:33:56 UTC

Does SVN 1.4.x not know about "ancestry"?

I am forced to work with a SVN version on our server that is quite old,
approximately 1.4.x.  I use the latest Subversive version, but with the
connector version that works with 1.4.x on the server.  This combination
works, but I'd like to understand some of the details underlying this.

I believe that one of the main features that is absent in 1.4.x with
respect to the latest is "ancestry", or "merge history".  Is that
correct?  So in either the SVN or Subversive documentation, any option
or feature related to "ancestry" will not be applicable here?

In the "red" book on Subversion, in the section on "svn merge", there is
the following statement:

"Unlike svn diff, the merge command takes the ancestry of a file into
consideration when performing a merge operation. This is very important
when you're merging changes from one branch into another and you've
renamed a file on one branch but not the other."

This is interesting, but nothing else is said about this.  What exactly
does this imply?

Re: Does SVN 1.4.x not know about "ancestry"?

Posted by Rob van Oostrum <rv...@gmail.com>.
On Mon, May 17, 2010 at 2:33 PM, KARR, DAVID (ATTSI) <dk...@att.com> wrote:

> I am forced to work with a SVN version on our server that is quite old,
> approximately 1.4.x.  I use the latest Subversive version, but with the
> connector version that works with 1.4.x on the server.  This combination
> works, but I'd like to understand some of the details underlying this.
>
> I believe that one of the main features that is absent in 1.4.x with
> respect to the latest is "ancestry", or "merge history".  Is that
> correct?  So in either the SVN or Subversive documentation, any option
> or feature related to "ancestry" will not be applicable here?
>
> In the "red" book on Subversion, in the section on "svn merge", there is
> the following statement:
>
> "Unlike svn diff, the merge command takes the ancestry of a file into
> consideration when performing a merge operation. This is very important
> when you're merging changes from one branch into another and you've
> renamed a file on one branch but not the other."
>
> This is interesting, but nothing else is said about this.  What exactly
> does this imply?
>
>
Ancestry in the context of SVN and merging is related to the shared history
that exists between the beginning and end of the scope of the merge, as well
as the destination of the merge (i.e. the base URL/revision of your working
copy).

SVN uses this shared ancestry to arrive at the shortest possible revision
ranges it uses to calculate the delta to be merged.

What's still missing in 1.4 (as compared with more recent versions of SVN)
is merge tracking, meaning keeping track of what has been merged already.


Hope that clears things up for you.

Cheers,
Rob