On Wed, Aug 5, 2015 at 11:35 AM, Andy Goth <andrew.m.g...@gmail.com> wrote:
>
> Unix mv would have renamed the directory from dir to dir2, i.e. made the
> new directory, moved all files and subdirectories into it, then removed
> the old directory.
>

Actually, the directory just gets rename. And if the directory is moved,
Unix/Linux systems will create a new "link" to the directory in it's target
location, then remove the original link. The time directory contents would
have to be "physically" move is if the target location in a different file
system (what Windows would call a volume or "drive").

The reason Fossil's mv semantics differ is because Fossil is tracking files
relative to the project root. Therefore, to Fossil, "dir/file.c" is just
the name of a file. While Unix/Linux "sees" the name of a directory and the
name of a file in that directory.

Really, Fossil is only tracking "artifacts". When an artifact is a file,
it's manifest artifact has a file name attribute (for that artifact) with a
value like "dir/file.c" that means something to a Unix/Linux/other file
system. To Fossil, it's just a piece of meta data being maintained in the
repository.
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to