[Svnmerge] [PATCH] make avail and integrated accepts URLs asarguments

Giovanni Bajo rasky at develer.com
Mon May 15 11:18:58 PDT 2006


Madan U Sreenivasan wrote:

> Why cant merge/block/unblock accept a url? I think url here denotes
> url at HEAD unless specified otherwise... The destination would anyway
> be the cwd, which is expected to be a working copy... sorry if there
> was a conversation earlier on this and I missed it.

If you keep init aside, all svnmerge commands require two arguments: a
"branch" (merge destination) and its "head" (merge source).

merge/block/unblock are all operations that modify the branch. Thus, they
require the "branch" to be a working copy, so to perform the operation
locally, and let the user review it and commit it. The "head" must be one of
the those for which the "branch" holds merge-tracking info (that is, which
were initialized with "svnmerge init"). Thus, the "head" (-S/--head) can be
specified with either a local path to a working copy, a full URL, or an
unambiguous substring of the URL (unambiguous among the possible "heads").
If the branch holds merge-tracking info for just one "head", there is no
need to speciy the -S/--head option at all (since it's implicitally that
only one).

avail is a bit different because it is a read-only operations, and thus does
not perform any modification. For this reason, it makes sense to be able to
specify a full URL as "branch" on the command line, since there is no need
for a working copy. This is what Mattias' patch does.

So I guess the answer to Madan's question is: merge/block/unblock already
accept a URL as "head". They cannot accept a URL as "branch" because they
need to perform modification on it.
-- 
Giovanni Bajo




More information about the Svnmerge mailing list