Dir-merge exclude filter ignored when rsync DEST ends in /.
Roland Friedwagner
roland.friedwagner at wu.ac.at
Tue Dec 13 09:30:39 MST 2011
Hi,
I encountered this behavor when switching my excludes
from global exclude filter rules to dir-merge rules.
If the spezified DEST directory has a trailing dot dir
the exclude filter rule "exclude /foobar"
inherited from dir-merge is ignored
and the file gets deleted.
But I'm not quite sure if this behavor is a bug or feature.
Test:
$ mkdir src
$ touch src/object
$ echo "exclude /object" > s/.rsync-filter
bash: s/.rsync-filter: No such file or directory
$ echo "exclude /object" > src/.rsync-filter
$ cp -a src dst
$ ls -flra src dst
src:
insgesamt 4
drwxrwxr-x 2 abcde abcde 39 2011-12-13 16:41 .
drwxrwxr-x 4 abcde abcde 26 2011-12-13 16:41 ..
-rw-rw-r-- 1 abcde abcde 0 2011-12-13 16:41 object
-rw-rw-r-- 1 abcde abcde 16 2011-12-13 16:41 .rsync-filter
dst:
insgesamt 4
drwxrwxr-x 2 abcde abcde 39 2011-12-13 16:41 .
drwxrwxr-x 4 abcde abcde 26 2011-12-13 16:41 ..
-rw-rw-r-- 1 abcde abcde 0 2011-12-13 16:41 object
-rw-rw-r-- 1 abcde abcde 16 2011-12-13 16:41 .rsync-filter
$ rsync -n -avF --delete src/ dst/.
building file list ... done
deleting object <== delete !
sent 97 bytes received 20 bytes 234.00 bytes/sec
total size is 16 speedup is 0.14
$ rsync -n -av --filter ": .rsync-filter" --delete src/ dst/.
building file list ... done
deleting object <== delete !
sent 97 bytes received 20 bytes 234.00 bytes/sec
total size is 16 speedup is 0.14
These DEST directory spezifications works as expected
(e.g. /object file is ignored):
$ rsync -n -avF --delete src/ dst
building file list ... done
sent 97 bytes received 20 bytes 234.00 bytes/sec
total size is 16 speedup is 0.14
$ rsync -n -avF --delete src/ dst/
building file list ... done
sent 97 bytes received 20 bytes 234.00 bytes/sec
total size is 16 speedup is 0.14
$ rsync -n -avF --delete src/ dst/./
building file list ... done
sent 97 bytes received 20 bytes 234.00 bytes/sec
total size is 16 speedup is 0.14
Tested rsync versions:
rsync version 2.6.9 protocol version 29
rsync version 3.0.9 protocol version 30
Kind Regards,
Roland
--
Roland.Friedwagner at wu.ac.at Phone: +43 1 31336 5377
IT Services - WU (Vienna University of Economics and Business)
More information about the rsync
mailing list