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

Re: [PATCH] no mergeinfo on 'mergeinfo NON-affecting' wc-to-wc copy

From: Danil Shopyrin <danil_at_visualsvn.com>
Date: Wed, 10 Sep 2008 20:18:41 +0400

> The patch looks correct, but I think it's more complicated than it
> needs to be. I'd rather not put the extra checks in a different
> function, and I don't think you need to extend
> svn_client__get_wc_mergeinfo().

> In propagate_mergeinfo_within_wc(), we need to do the following:

Looks like that the proposed patch does exactly the same things. But
with a little bit more sophisticated logic. For example, copy between
different working copies is also handled.

> 1. Get the mergeinfo for the source. If it's explicit, not inherited,
> we're done, there's nothing to propagate, because the destination
> already has the same explicit mergeinfo as the source, as a result of
> the copy. Currently, propagate_mergeinfo_within_wc() calls
> calculate_target_mergeinfo(), we can replace this with a call to
> svn_client__get_wc_mergeinfo().

We don't need this step. This check is performed 'automatically'.
Source and destination receive mergeinfo from different urls if the
source have explicit mergeinfo.

> 2. Figure out which path the destination inherits mergeinfo from, if any.

The proposed patch relies on urls, not on paths. There are some
problems with absolute and relative paths etc. And I don't want to
duplicate svn_client__get_wc_mergeinfo()'s sophisticated working copy
climbing logic. That's why svn_client__get_wc_mergeinfo() is tweaked.

> 3. If the source and destination inherit from the same parent path (or
> no path at all), we're done.
> 4. Add the mergeinfo to the destination.

--
Danil
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-09-10 18:18:55 CEST

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