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

Re: command to verify move history

From: Paul Koning <Paul_Koning_at_dell.com>
Date: Wed, 2 Jul 2008 17:28:25 -0400

>>>>> "Garret" == Garret Wilson <garret_at_globalmentor.com> writes:

 Garret> Paul, Are you implying that, for a move to carry history, the
 Garret> delete and add operations have to be committed at the same
 Garret> time? If a "move" is just a delete+add, with the add getting
 Garret> extra metadata, why can't you commit the delete and the add
 Garret> in separate revisions?

 Garret> I'm guessing what you meant is that one can *infer* a move as
 Garret> distinguished from a copy if there was a deletion of the
 Garret> original files in the same revision.


If you do a move as a repository action (with URLs) then it is
definitely a single revision.

If you do a move in a working directory, and you separately commit the
source and destination subtrees, then indeed you'd see the add and the
delete actions in separate revisions.

I have a simple answer to that -- doing so is Bad Practice. A set of
changes that together make up a single change -- whatever that means
in your situation -- should always be committed as a single commit.
Clearly that applies to a move. It also applies when you change three
source files for a single piece of work.

Yes, you can do separate commits, but it just isn't a good idea to do
so. The transactional nature of Subversion is a good raeson, as is
the reverse merge mechanism for easy "undo", and so on.

You can set your own usage rules, of course, but the one I just quoted
is the one we apply here.


To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-07-02 23:28:52 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.