I'm using rsync-2.5.7-2 on an updated Fedora Core 1 athlon system.
The -vn option lists all files to be copied or deleted, including
symlinks, but it does not appear to list empty directories to be
copied, even tough it copies them. It does list empty directories to
be deleted. The -v option does list and copy empty directories. -v
should behave the same in both instances, and the desired behavior is
to report the copy of the empty directory.
Consider the following tree:
drwxr-xr-x 4 jh jh 4096 Jan 14 15:50 .
drwxr-xr-x 2 jh jh 4096 Jan 14 15:45 ./baz
-rw-r--r-- 1 jh jh 0 Jan 14 15:45 ./baz/glup
drwxr-xr-x 3 jh jh 4096 Jan 14 15:50 ./foo
drwxr-xr-x 2 jh jh 4096 Jan 14 15:31 ./foo/bar
-rw-r--r-- 1 jh jh 0 Jan 14 15:44 ./foo/quuz
lrwxrwxrwx 1 jh jh 3 Jan 14 15:50 ./foo/wrt -> spl
rsync -aHSvn --delete foo/ baz/
building file list ... done
deleting glup
quuz
wrt -> spl
wrote 133 bytes read 24 bytes 314.00 bytes/sec
total size is 3 speedup is 0.02
Here it should have said it would copy bar.
rsync -aHSvn --delete baz/ foo/
building file list ... done
deleting wrt
deleting quuz
deleting directory bar
glup
wrote 96 bytes read 24 bytes 240.00 bytes/sec
total size is 0 speedup is 0.00
Here we did hear about bar, correctly.
rsync -aHSv --delete foo/ baz/
building file list ... done
deleting glup
./
bar/
quuz
wrt -> spl
wrote 165 bytes read 36 bytes 402.00 bytes/sec
total size is 3 speedup is 0.01
Without -n, we hear about bar, correctly, as well, and it is copied:
drwxr-xr-x 4 jh jh 4096 Jan 14 15:50 .
drwxr-xr-x 3 jh jh 4096 Jan 14 15:50 ./baz
drwxr-xr-x 2 jh jh 4096 Jan 14 15:31 ./baz/bar
-rw-r--r-- 1 jh jh 0 Jan 14 15:44 ./baz/quuz
lrwxrwxrwx 1 jh jh 3 Jan 14 15:53 ./baz/wrt -> spl
drwxr-xr-x 3 jh jh 4096 Jan 14 15:50 ./foo
drwxr-xr-x 2 jh jh 4096 Jan 14 15:31 ./foo/bar
-rw-r--r-- 1 jh jh 0 Jan 14 15:44 ./foo/quuz
lrwxrwxrwx 1 jh jh 3 Jan 14 15:50 ./foo/wrt -> spl
Please send any replies personal, as I am not on the list.
(And yes, I know it's quux, not quuz, but I typoed and got lazy).
--jh--