Can I use wildcards or globbing to move many files at once?

No, there is no built-in way to do this. Many commands, like mv, refuse to take an arbitrary number of arguments, and in any case, Subversion doesn't expand wildcards like "*" the way the shell does.

For example, you want to do something like svn mv svn://server/trunk/stuff/* svn://server/trunk/some-other-dir But it fails with svn: Path 'svn://server/trunk/stuff/*' does not exist in revision 123 or some other inscrutable error message.

If you have a working copy that contains all the source files as well as the destination directory, then you can exploit your shell's wildcard feature to do the move, like this (for Bash): for i in stuff/*; do svn mv $i some-other-dir; done svn ci -m "moved all the stuff into some other dir".

In any case, you can always accumulate a list of the names of the source files, and then run svn mv on each item in that list, like this: s=svn://server/trunk/stuff/ svn ls "$s" | \ while read f o do svn mv "$s/$f" svn://server/trunk/some-other-dir -m "Moved just one file" done. Note, however, that this will generate one commit per source file; that's in contrast to the method using a working copy, which generates just one commit total.

There is a program called "svnmucc" or "mucc", depending on which version of Subversion you have, whose source is distributed with Subversion (in .../contrib/client-side/mucc/mucc.c for Subversion 1.4 or earlier, in .../contrib/client-side/svnmucc/svnmucc.c for Subversion 1.5 or later), that appears to solve this problem. NOTE: With release 1.5, Subversion allows you to cp and mv multiple files at once.