-- Matt McCutchen <hashproduct@gmail.com>
-based-on: 6b8db0f6440b28d26ef807d17517715c47e62bd9
+based-on: c3b553a93f7090bcbb89c08405f1a5f1c175c864
diff --git a/options.c b/options.c
--- a/options.c
+++ b/options.c
{"no-backup", 0, POPT_ARG_VAL, &make_backups, 0, 0, 0 },
{"backup-dir", 0, POPT_ARG_STRING, &backup_dir, 0, 0, 0 },
{"suffix", 0, POPT_ARG_STRING, &backup_suffix, 0, 0, 0 },
-@@ -2776,6 +2778,8 @@ void server_options(char **args, int *argc_p)
+@@ -2783,6 +2785,8 @@ void server_options(char **args, int *argc_p)
} else {
if (skip_compress)
args[ac++] = safe_arg("--skip-compress", skip_compress);
diff --git a/rsync.1.md b/rsync.1.md
--- a/rsync.1.md
+++ b/rsync.1.md
-@@ -386,6 +386,7 @@ detailed description below for a complete description.
+@@ -390,6 +390,7 @@ has its own detailed description later in this man page.
--existing skip creating new files on receiver
--ignore-existing skip updating files that exist on receiver
--remove-source-files sender removes synchronized files (non-dir)
--del an alias for --delete-during
--delete delete extraneous files from dest dirs
--delete-before receiver deletes before xfer, not during
-@@ -1669,6 +1670,16 @@ your home directory (remove the '=' for that).
+@@ -1755,6 +1756,17 @@ your home directory (remove the '=' for that).
Starting with 3.1.0, rsync will skip the sender-side removal (and output an
error) if the file's size or modify time has not stayed unchanged.
+0. `--source-backup`
+
+ Makes the sender back up the source files it removes due to
-+ `--remove-source-files`. This option is independent of `--backup` but uses
-+ the same `--backup-dir` and `--suffix` settings, if any. With
-+ `--backup-dir`, rsync looks for each file's backup dir relative to the
-+ source argument the file came from. Consequently, if the `--backup-dir`
-+ path is relative, each source argument gets a separate backup dir at that
-+ path relative to the argument.
++ [`--remove-source-files`](#opt). This option is independent of
++ [`--backup`](#opt) but uses the same [`--backup-dir`](#opt) and
++ [`--suffix`](#opt) settings, if any. With [`--backup-dir`](#opt), rsync
++ looks for each file's backup dir relative to the source argument the file
++ came from. Consequently, if the [`--backup-dir`](#opt) path is relative,
++ each source argument gets a separate backup dir at that path relative to
++ the argument.
+
0. `--delete`