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

Subversion != your filesystem (was mv != (cp && rm))

From: B. W. Fitzpatrick <fitz_at_red-bean.com>
Date: 2001-11-28 03:23:47 CET

> Regardless of how the backend is implemented, the frontend should have an
> atomic "mv".

>From the info pages for ``mv'':

    ...It first uses some of the same code that's used by `cp -a'
    to copy the requested directories and files, then (assuming the copy
    succeeded) it removes the originals. If the copy fails, then the part
    that was copied to the destination partition is removed. If you were
    to copy three directories from one partition to another and the copy of
    the first directory succeeded, but the second didn't, the first would
    be left on the destination partion and the second and third would be
    left on the original partition.

So it's basically cp && rm with a failsafe mode.

So, unless ``svn mv'' commits immediately, it *is* going to be
different. I think it should be. Subversion is a revision control
system, thus it has one more dimension to it than a standard OS
filesystem: time.

-Fitz

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:49 2006

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