New -x code had some problems, so restore the old code for now
[rsync/rsync.git] / rsync.yo
index e252280..9faf38e 100644 (file)
--- a/rsync.yo
+++ b/rsync.yo
@@ -624,11 +624,11 @@ data is required).
 
 dit(bf(-d, --dirs)) Tell the sending side to include any directories that
 are encountered.  Unlike bf(--recursive), a directory's contents are not copied
 
 dit(bf(-d, --dirs)) Tell the sending side to include any directories that
 are encountered.  Unlike bf(--recursive), a directory's contents are not copied
-unless the directory was specified on the command-line as either "." or a
-name with a trailing slash (e.g. "foo/").  Without this option or the
+unless the directory name specified is "." or ends with a trailing slash
+(e.g. ".", "dir/.", "dir/", etc.).  Without this option or the
 bf(--recursive) option, rsync will skip all directories it encounters (and
 output a message to that effect for each one).  If you specify both
 bf(--recursive) option, rsync will skip all directories it encounters (and
 output a message to that effect for each one).  If you specify both
-bf(--dirs) and bf(--recursive), the latter takes precedence.
+bf(--dirs) and bf(--recursive), bf(--recursive) takes precedence.
 
 dit(bf(-l, --links)) When symlinks are encountered, recreate the
 symlink on the destination.
 
 dit(bf(-l, --links)) When symlinks are encountered, recreate the
 symlink on the destination.
@@ -719,6 +719,8 @@ item that should only apply to a file by prefixing it with a 'F'.  For example:
 
 quote(--chmod=Dg+s,ug+w,Fo-w,+X)
 
 
 quote(--chmod=Dg+s,ug+w,Fo-w,+X)
 
+It is also legal to specify multiple bf(--chmod) options.
+
 dit(bf(-n, --dry-run)) This tells rsync to not do any file transfers,
 instead it will just report the actions it would have taken.
 
 dit(bf(-n, --dry-run)) This tells rsync to not do any file transfers,
 instead it will just report the actions it would have taken.
 
@@ -734,6 +736,21 @@ dit(bf(-x, --one-file-system)) This tells rsync not to cross filesystem
 boundaries  when recursing.  This  is useful for transferring the
 contents of only one filesystem.
 
 boundaries  when recursing.  This  is useful for transferring the
 contents of only one filesystem.
 
+dit(bf(-x, --one-file-system)) This tells rsync to avoid recursing into a
+directory that is the mount-point for another filesystem, including (as of
+2.6.7), "bind" mount-points.  You can still copy the contents of multiple
+file systems if you include a source dir from each file system -- this just
+limits rsync's directory-recursion algorithm.
+
+Rsync will copy the directory at each encountered mount-point unless this
+option is repeated.  Note, however, that the attributes of this mount-point
+directory are copied from those currently visible in the filesystem, not
+the inaccessible attributes of the underlying directory.
+
+This option does not affect the "collapsing" of symlinks that options such
+as bf(--copy-links) perform, irrespective of what filesystem the symlink's
+referent may be on.
+
 dit(bf(--existing, --ignore-non-existing)) This tells rsync to skip
 updating files that do not exist yet on the destination.  If this option is
 combined with the bf(--ignore-existing) option, no files will be updated
 dit(bf(--existing, --ignore-non-existing)) This tells rsync to skip
 updating files that do not exist yet on the destination.  If this option is
 combined with the bf(--ignore-existing) option, no files will be updated
@@ -760,7 +777,7 @@ include/exclude modifiers in the FILTER RULES section).
 
 Prior to rsync 2.6.7, this option would have no effect unless bf(--recursive)
 was in effect.  Beginning with 2.6.7, deletions will also occur when bf(--dirs)
 
 Prior to rsync 2.6.7, this option would have no effect unless bf(--recursive)
 was in effect.  Beginning with 2.6.7, deletions will also occur when bf(--dirs)
-is specified, but only for directories whose contents are being copied.
+(bf(-d)) is in effect, but only for directories whose contents are being copied.
 
 This option can be dangerous if used incorrectly!  It is a very good idea
 to run first using the bf(--dry-run) option (bf(-n)) to see what files would be
 
 This option can be dangerous if used incorrectly!  It is a very good idea
 to run first using the bf(--dry-run) option (bf(-n)) to see what files would be
@@ -1158,6 +1175,10 @@ ssh prefers non-blocking I/O.)
 dit(bf(-i, --itemize-changes)) Requests a simple itemized list of the
 changes that are being made to each file, including attribute changes.
 This is exactly the same as specifying bf(--log-format='%i %n%L').
 dit(bf(-i, --itemize-changes)) Requests a simple itemized list of the
 changes that are being made to each file, including attribute changes.
 This is exactly the same as specifying bf(--log-format='%i %n%L').
+If you repeat the option, unchanged files will also be output, but only
+if the receiving rsync is at least version 2.6.7 (you can use bf(-vv)
+with older versions of rsync, but that also turns on the output of other
+verbose messages).
 
 The "%i" escape has a cryptic output that is 9 letters long.  The general
 format is like the string bf(UXcstpoga)), where bf(U) is replaced by the
 
 The "%i" escape has a cryptic output that is 9 letters long.  The general
 format is like the string bf(UXcstpoga)), where bf(U) is replaced by the