--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
-u, --update update only (don't overwrite newer files)
--inplace update the destination files in-place
+ -k, --keep-dirs transfer a directory without recursing
-K, --keep-dirlinks treat symlinked dir on receiver as dir
-l, --links copy symlinks as symlinks
-L, --copy-links copy the referent of all symlinks
--existing only update files that already exist
--ignore-existing ignore files that already exist on receiver
--delete delete files that don't exist on sender
- --delete-excluded also delete excluded files on receiver
--delete-after receiver deletes after transfer, not before
+ --delete-excluded also delete excluded files on receiver
--ignore-errors delete even if there are I/O errors
+ --force force deletion of dirs even if not empty
--max-delete=NUM don't delete more than NUM files
--max-size=SIZE don't transfer any file larger than SIZE
--partial keep partially transferred files
--partial-dir=DIR put a partially transferred file into DIR
- --force force deletion of dirs even if not empty
--numeric-ids don't map uid/gid values by user/group name
--timeout=TIME set I/O timeout in seconds
-I, --ignore-times turn off mod time & file size quick check
specify bf(-H).
dit(bf(-r, --recursive)) This tells rsync to copy directories
-recursively. If you don't specify this then rsync won't copy
-directories at all.
+recursively. See also --keep-dirs (-k).
dit(bf(-R, --relative)) Use relative paths. This means that the full path
names specified on the command line are sent to the server rather than
regardless of the timestamps. This might change in the future (feel
free to comment on this on the mailing list if you have an opinion).
+dit(bf(-k, --keep-dirs)) Tell the sending side to keep any directories that
+are encountered. Unlike --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
+--recursive option, rsync will skip all directories it encounters (and
+output a message to that effect for each one).
+
dit(bf(-K, --keep-dirlinks)) On the receiving side, if a symlink is
pointing to a directory, it will be treated as matching a directory
from the sender.
the files' parent directory. Files that are excluded from transfer are
excluded from being deleted unless you use --delete-excluded.
-This option has no effect if directory recursion is not selected.
+This option has no effect unless directory recursion is enabled.
This option can be dangerous if used incorrectly! It is a very good idea
to run first using the --dry-run option (-n) to see what files would be
sending side causing a massive deletion of files on the
destination. You can override this with the --ignore-errors option.
-dit(bf(--delete-excluded)) In addition to deleting the files on the
-receiving side that are not on the sending side, this tells rsync to also
-delete any files on the receiving side that are excluded (see --exclude).
-Implies --delete.
-
dit(bf(--delete-after)) By default rsync does file deletions on the
receiving side before transferring files to try to ensure that there is
sufficient space on the receiving filesystem. If you want to delete
the transfer (while the receiving side is scanned for deletions) as this
delay might cause the transfer to timeout.
+dit(bf(--delete-excluded)) In addition to deleting the files on the
+receiving side that are not on the sending side, this tells rsync to also
+delete any files on the receiving side that are excluded (see --exclude).
+Implies --delete.
+
dit(bf(--ignore-errors)) Tells --delete to go ahead and delete files
even when there are I/O errors.