On Mon, May 17, 2010 at 2:33 PM, KARR, DAVID (ATTSI) <dk0...@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