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

svn commit, please don't make me tell you the old path for each move

From: Julian Foad <julianfoad_at_apache.org>
Date: Thu, 26 Jan 2017 20:54:52 +0000

When I "svn rename" one or a few files,

   svn mv foo.txt foo2.txt
   svn mv dir/bar.txt bar.txt

and want to commit just these files (not a whole subtree), I can write
the new filenames easily by using the shell's filename completion or
copying them from a directory listing.

   svn commit foo2.txt bar.txt

But svn currently complains that as these files are moved I also need to
list their *old* names.

svn: E200009: Commit failed (details follow):
svn: E200009: Cannot commit '/home/julianfoad/tmp/svn/mv-commit/wc/foo2'
because it was moved from '/home/julianfoad/tmp/svn/mv-commit/wc/foo'
which is not part of the commit; both sides of the move must be
committed together

Ugh!

   svn commit foo2.txt bar.txt foo.txt dir/bar.txt
   (succeeds)

Is it time to make 'svn' offer to find and commit the corresponding old
names, without making me do it manually?

I was doing this in my real-life filing of documents at home the other
day, and it seemed unnecessarily obstructive and cumbersome.

(There are several details we can bikeshed about what it should do
exactly -- such as what if we only specify the old path, and should it
prompt interactively, or need a new option, or do it by default -- but
first do we agree that a change in this direction would be good?)

- Julian
Received on 2017-01-26 21:55:01 CET

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