-This is equivalent to specifying bf(--log-format='%i %n%L'). (See the
-description of what the output of '%i' means in the rsyncd.conf manpage.)
-Rsync also mentions the delete action when an item replaces an item of a
-different type (e.g. a directory replaces a file of the same name).
-
-dit(bf(--log-format=FORMAT)) This allows you to specify exactly what the
-rsync client logs to stdout on a per-file basis. This format can be used
-without bf(--verbose) to enable just the outputting of the file-transfer
-information, or it can be used to change how the names are output when
-bf(--verbose) is enabled. Rsync will log the name of an item prior to its
-transfer unless one of the transferred-byte-count values is requested, in
-which case the logging is done at the end of the item's transfer. In this
-late-transfer state, if bf(--progress) is also specified, rsync will output
-just the name of the file prior to the progress information.
-
-The log format is specified using the same format conventions as the
-"log format" option in rsyncd.conf, so see that manpage for details.
-(Note that this option does not affect what a daemon logs to its logfile.)
+This is exactly the same as specifying bf(--out-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 11 letters long. The general
+format is like the string bf(YXcstpoguax), where bf(Y) is replaced by the
+type of update being done, bf(X) is replaced by the file-type, and the
+other letters represent attributes that may be output if they are being
+modified.
+
+The update types that replace the bf(Y) are as follows:
+
+quote(itemization(
+ it() A bf(<) means that a file is being transferred to the remote host
+ (sent).
+ it() A bf(>) means that a file is being transferred to the local host
+ (received).
+ it() A bf(c) means that a local change/creation is occurring for the item
+ (such as the creation of a directory or the changing of a symlink, etc.).
+ it() A bf(h) means that the item is a hard link to another item (requires
+ bf(--hard-links)).
+ it() A bf(.) means that the item is not being updated (though it might
+ have attributes that are being modified).
+))
+
+The file-types that replace the bf(X) are: bf(f) for a file, a bf(d) for a
+directory, an bf(L) for a symlink, a bf(D) for a device, and a bf(S) for a
+special file (e.g. named sockets and fifos).
+
+The other letters in the string above are the actual letters that
+will be output if the associated attribute for the item is being updated or
+a "." for no change. Three exceptions to this are: (1) a newly created
+item replaces each letter with a "+", (2) an identical item replaces the
+dots with spaces, and (3) an unknown attribute replaces each letter with
+a "?" (this can happen when talking to an older rsync).
+
+The attribute that is associated with each letter is as follows:
+
+quote(itemization(
+ it() A bf(c) means the checksum of the file is different and will be
+ updated by the file transfer (requires 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 modification time is different and is being updated
+ to the sender's value (requires bf(--times)). An alternate value of bf(T)
+ means that the time will be set to the transfer time, which happens
+ anytime a symlink is transferred, or when a file or device is transferred
+ without bf(--times).
+ it() A bf(p) means the permissions are different and are being updated to
+ the sender's value (requires bf(--perms)).
+ it() An bf(o) means the owner is different and is being updated to the
+ sender's value (requires bf(--owner) and super-user privileges).
+ it() A bf(g) means the group is different and is being updated to the
+ sender's value (requires bf(--group) and the authority to set the group).
+ it() The bf(u) slot is reserved for reporting update (access) time changes
+ (a feature that is not yet released).
+ it() The bf(a) means that the ACL information changed.
+ it() The bf(x) slot is reserved for reporting extended attribute changes
+ (a feature that is not yet released).
+))
+
+One other output is possible: when deleting files, the "%i" will output
+the string "*deleting" for each item that is being removed (assuming that
+you are talking to a recent enough rsync that it logs deletions instead of
+outputting them as a verbose message).
+
+dit(bf(--out-format=FORMAT)) This allows you to specify exactly what the
+rsync client outputs to the user on a per-update basis. The format is a text
+string containing embedded single-character escape sequences prefixed with
+a percent (%) character. For a list of the possible escape characters, see
+the "log format" setting in the rsyncd.conf manpage.
+
+Specifying this option will mention each file, dir, etc. that gets updated
+in a significant way (a transferred file, a recreated symlink/device, or a
+touched directory). In addition, if the itemize-changes escape (%i) is
+included in the string, the logging of names increases to mention any
+item that is changed in any way (as long as the receiving side is at least
+2.6.4). See the bf(--itemize-changes) option for a description of the
+output of "%i".
+
+The bf(--verbose) option implies a format of "%n%L", but you can use
+bf(--out-format) without bf(--verbose) if you like, or you can override
+the format of its per-file output using this option.
+
+Rsync will output the out-format string prior to a file's transfer unless
+one of the transfer-statistic escapes is requested, in which case the
+logging is done at the end of the file's transfer. When this late logging
+is in effect and bf(--progress) is also specified, rsync will also output
+the name of the file being transferred prior to its progress information
+(followed, of course, by the out-format output).
+
+dit(bf(--log-file=FILE)) This option causes rsync to log what it is doing
+to a file. This is similar to the logging that a daemon does, but can be
+requested for the client side and/or the server side of a non-daemon
+transfer. If specified as a client option, transfer logging will be
+enabled with a default format of "%i %n%L". See the bf(--log-file-format)
+option if you wish to override this.
+
+Here's a example command that requests the remote side to log what is
+happening:
+
+verb( rsync -av --rsync-path="rsync --log-file=/tmp/rlog" src/ dest/)
+
+This is very useful if you need to debug why a connection is closing
+unexpectedly.
+
+dit(bf(--log-file-format=FORMAT)) This allows you to specify exactly what
+per-update logging is put into the file specified by the bf(--log-file) option
+(which must also be specified for this option to have any effect). If you
+specify an empty string, updated files will not be mentioned in the log file.
+For a list of the possible escape characters, see the "log format" setting
+in the rsyncd.conf manpage.