The CVS exclude option of rsync can be harmful in some cases.
For example I use rsync to keep my/this website updated. At some point I noticed some strange behavior after the update of several of the WordPress plugins I use. After a bit of investigation I noticed that one plugin (Broken Link Checker) has a directory which is named “core”. This is one of the filenames which are in the exclude list of the CVS exclude feature of rsync. Normally it should only prevent the transfer of core-files, but as rsync does not have a look if this is a file or a directory (it is not supposed to do this), it also prevents the transmission of the directory.
After modifying the rsync options to manually exclude the CVS patterns except for “core”, the site worked correctly again.
It seems this is one of those cases where different development/management cultures show some little incompatibilities.
Tags: broken link checker, core files, cultures, cvs, development management, filenames, incompatibilities, rsync, strange behavior, wordpress plugins —