X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/8a6f3fead8667434ef08b3c1de2e3c899f1d70ee..527a010f103f61f1db2d61668a8215c2c0bbe78f:/rsync.yo diff --git a/rsync.yo b/rsync.yo index c6ff2264..98ef3bfb 100644 --- a/rsync.yo +++ b/rsync.yo @@ -324,7 +324,7 @@ to the detailed description below for a complete description. verb( -O, --omit-dir-times omit directories when preserving times -S, --sparse handle sparse files efficiently -n, --dry-run show what would have been transferred - -W, --whole-file copy files whole + -W, --whole-file copy files whole (without rsync algorithm) --no-whole-file always use incremental rsync algorithm -x, --one-file-system don't cross filesystem boundaries -B, --block-size=SIZE force a fixed checksum block-size @@ -350,7 +350,8 @@ to the detailed description below for a complete description. verb( -I, --ignore-times don't skip files that match size and time --size-only skip files that match in size --modify-window=NUM compare mod-times with reduced accuracy - -T --temp-dir=DIR create temporary files in directory DIR + -T, --temp-dir=DIR create temporary files in directory DIR + -y, --fuzzy find similar file for basis if no dest file --compare-dest=DIR also compare received files relative to DIR --copy-dest=DIR ... and include copies of unchanged files --link-dest=DIR hardlink to files in DIR when unchanged @@ -364,7 +365,7 @@ to the detailed description below for a complete description. verb( --include=PATTERN don't exclude files matching PATTERN --include-from=FILE read include patterns from FILE --files-from=FILE read list of source-file names from FILE - -0 --from0 all *from file lists are delimited by nulls + -0, --from0 all *from file lists are delimited by nulls --version print version number --port=PORT specify double-colon alternate port number --blocking-io use blocking I/O for the remote shell @@ -372,6 +373,7 @@ to the detailed description below for a complete description. verb( --stats give some file-transfer stats --progress show progress during transfer -P same as --partial --progress + -i, --itemize-changes output a change-summary for all updates --log-format=FORMAT log file-transfers using specified format --password-file=FILE read password from FILE --list-only list the files instead of copying them @@ -379,8 +381,8 @@ to the detailed description below for a complete description. verb( --write-batch=FILE write a batched update to FILE --read-batch=FILE read a batched update from FILE --checksum-seed=NUM set block/file checksum seed (advanced) - -4 --ipv4 prefer IPv4 - -6 --ipv6 prefer IPv6 + -4, --ipv4 prefer IPv4 + -6, --ipv6 prefer IPv6 -h, --help show this help screen) Rsync can also be run as a daemon, in which case the following options are @@ -392,8 +394,8 @@ accepted: verb( --no-detach do not detach from the parent --port=PORT listen on alternate port number -v, --verbose increase verbosity - -4 --ipv4 prefer IPv4 - -6 --ipv6 prefer IPv6 + -4, --ipv4 prefer IPv4 + -6, --ipv6 prefer IPv6 -h, --help show this help screen) manpageoptions() @@ -663,15 +665,6 @@ dit(bf(--ignore-existing)) This tells rsync not to update files that already exist on the destination. -dit(bf(--max-delete=NUM)) This tells rsync not to delete more than NUM -files or directories. This is useful when mirroring very large trees -to prevent disasters. - -dit(bf(--max-size=SIZE)) This tells rsync to avoid transferring any -file that is larger than the specified SIZE. The SIZE value can be -suffixed with a letter to indicate a size multiplier (K, M, or G) and -may be a fractional value (e.g. "bf(--max-size=1.5m)"). - dit(bf(--delete)) This tells rsync to delete extraneous files from the receiving side (ones that aren't on the sending side), but only for the directories that are being synchronized. You must have asked rsync to @@ -741,6 +734,15 @@ they are not empty when they are to be replaced by non-directories. This is only relevant without bf(--delete) because deletions are now done depth-first. Requires the bf(--recursive) option (which is implied by bf(-a)) to have any effect. +dit(bf(--max-delete=NUM)) This tells rsync not to delete more than NUM +files or directories. This is useful when mirroring very large trees +to prevent disasters. + +dit(bf(--max-size=SIZE)) This tells rsync to avoid transferring any +file that is larger than the specified SIZE. The SIZE value can be +suffixed with a letter to indicate a size multiplier (K, M, or G) and +may be a fractional value (e.g. "bf(--max-size=1.5m)"). + dit(bf(-B, --block-size=BLOCKSIZE)) This forces the block size used in the rsync algorithm to a fixed value. It is normally selected based on the size of each file being updated. See the technical report for details. @@ -909,6 +911,16 @@ scratch directory when creating temporary copies of the files transferred on the receiving side. The default behavior is to create the temporary files in the receiving directory. +dit(bf(-y, --fuzzy)) This option tells rsync that it should look for a +basis file for any destination file that is missing. The current algorithm +looks in the same directory as the destination file for either a file that +has an identical size and modified-time, or a similarly-named file. If +found, rsync uses the fuzzy basis file to try to speed up the transfer. + +Note that the use of the bf(--delete) option might get rid of any potential +fuzzy-match files, so either use bf(--delete-after) or specify some +filename exclusions if you need to prevent this. + dit(bf(--compare-dest=DIR)) This option instructs rsync to use em(DIR) on the destination machine as an additional hierarchy to compare destination files against doing transfers (if the files are missing in the destination @@ -1000,6 +1012,39 @@ ssh prefers non-blocking I/O.) dit(bf(--no-blocking-io)) Turn off bf(--blocking-io), for use when it is the default. +dit(bf(-i, --itemize-changes)) Outputs a change-summary for each updated +item. The format is as follows: + +quote(tt( *XcstpogDL ITEM_NAME)) + +The bf(*) will be present if this is a file that is being transferred, +otherwise it will be replaced with a space. The bf(X) will be replaced by +one of the following: an "f" for a file, a "d" for a dir, an "L" for a +symlink, or a "D" for a device. The rest of the letters in the string +above are the actual letters that will be output if the associated +attribute for the item is being updated; if not the letter will be replaced +by either a "-" if no change is occurring, or a "+" if this is a new item. +The meanings of the attribute letters are as follows: + +quote(itemize( + it() A bf(c) means the checksum of the file is different and will be + updated by the file transfer (requries bf(--checksum)). + it() A bf(s) means the size of the file is different and will be updated + by the file transfer. + it() A bf(t) means the modified time is being updated to the server's + value (requires --times, but transferred files without --times will be + marked with a bf(T) because the time is updated to the transfer time). + it() A bf(p) means the permissions are being updated (requires + bf(--perms)). + it() An bf(o) means the owner is being updated (requires bf(--owner) and + root privileges). + it() A bf(g) means the group is being updated (requires bf(--group)). + it() A bf(D) means the device is being updated (requires bf(--devices) + and root privileges). + it() An bf(L) means the symlink value is being updated (requires + --links). +)) + dit(bf(--log-format=FORMAT)) This allows you to specify exactly what the rsync client logs to stdout on a per-file basis. The log format is specified using the same format conventions as the log format option in