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

Re: "multi-part" merge with conflicts does not "bail out with an error message"

From: Mark Phippard <markphip_at_gmail.com>
Date: Fri, 14 Nov 2008 11:27:32 -0500

On Fri, Nov 14, 2008 at 11:22 AM, Brazhnik <brazhnik_at_gmail.com> wrote:
> 2. Reproducing --------------------------
> rem /* change 5 skipped to make multi-part merge */
> svn merge --accept postpone -c 4 -c 6 %pathRepo%/trunk work\branch ||
> echo ERROR !!!!

I know this has been discussed, I am not sure if there has been any
changes made in trunk though. The documentation you quoted from the
book applies when svn merge is used with no revision argument, or
perhaps also when it is given a single range of revisions too. But
basically, because of the merge tracking information, internally
Subversion decides to break its single unit of work into multiple
passes. If one of those passes ends with unresolved conflicts, then
it does bail out.

However, this same logic is not implemented when you yourself give
Subversion multiple revisions to merge. Your example above:

svn merge --accept postpone -c 4 -c 6 %pathRepo%/trunk work\branch

Is the same as if you did this:

svn merge --accept postpone -c 4 %pathRepo%/trunk work\branch
svn merge --accept postpone -c 6 %pathRepo%/trunk work\branch

And in that second example, Subversion does not prevent a user from
running that second merge just because there are active conflicts in
the working copy. So in a sense, the behavior you are seeing is what
was expected. Like I said at the beginning, I do not know this has
been discussed on dev@ about whether it ought to be changed. I do not
think any work has gone into doing that.

Mark Phippard
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-11-14 17:34:15 CET

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