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

Re: [PATCH] Move multiple targets

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: 2005-11-07 19:14:41 CET

Hyrum K. Wright wrote:
> This patch modifies the move subcommand to accept more than two
> arguments, similar to the unix mv command. If there are only two
> arguments, the command continues the current behavior. If there are
> more than two, it checks to see if the last one is a directory, and if
> it is, moves the preceding targets into it.

Thanks for the patch. I would like this enhancement. I have some concerns.

(1) "copy" is very similar to "move", and should be modified in this way at the
same time.

(2) The current behaviour of "svn move" (with respect to how the destination is
interpreted) is not documented in its help text. We need to decide whether we
are happy with it, and document it, first, so that we can make sure the
multiple-source behaviour is consistent with the single-source behaviour.

In the existing two-argument "svn move", I believe that if the target already
exists and is a directory, the source is copied INTO the destination dir,
otherwise the source is copied TO the destination. This is under discussion at
the API level in the thread "API proposal - issue 2188 - svn_client_copy/move".
  Similar arguments apply to the command-line interface, but the desired
interface may well differ (and, in particular, needs to be backward-compatible).

> Right now, this change lives in the client, but would it be better to
> have the multiple move logic live somewhere lower down the stack, such
> as the wc layer?

Yes. At least for the case of a move performed directly on a repository, it
needs to be done at a lower layer so that the move is done in one commit and
not N commits.

- Julian

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Nov 7 19:17:04 2005

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