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

Re: Disabling automatic conflict resolution?

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2003-08-18 17:45:21 CEST

Brandon Ehle <azverkan@yahoo.com> writes:

> >I'm not sure this is a big enough problem to warrant any special
> >support. Honestly, in ~8 years of working with copy-modify-merge
> >revision control systems (CVS and then Subversion), I think I've maybe
> >lost a total of 30 minutes to this sort of semantic problem. Usually
> >I knew in advance (from commit mails or other forms of developer
> >communication) that the incoming change was dangerous, and adjusted my
> >update accordingly.
> >
> >
> I'm not sure because I have never tried to do this with Subversion,
> but is it possible to switch to an older version of the file and have
> Subversion automatically unmerge changes from the repository or do you
> have to rely on diff and patch for this?

Of course, that's what backdating is all about.

Suppose you have rev 10 of a file, and you add local changeset "A".

Then you update to rev 15, which adds changeset "B".

Now your working file is basically 'r15 + A', or equivalently, 'r10 +
B + A'.

If you backdate your file ('svn up -r10'), changeset B is removed, and
you're back at 'r10 + A' again.

The issue here is: what if A and B overlap a tiny bit? In that
scenario, when you update to r15, you now have "r15 + *most* of A",
because of the merge. And your backdating will only leave you with
'r10 + *most* of A', because svn forgets the fact that the tiny
merge-overlap happened; it reverts all of change B when you backdate.

This is the scenario that Eric was talking about, and which cmpilato
and kfogel address.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Aug 18 17:50:29 2003

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.