X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/f2376a081a5dbb2434b0658fcda35a473acc0aae..refs/heads/master:/date-only.diff diff --git a/date-only.diff b/date-only.diff index b43ac3a..607c1da 100644 --- a/date-only.diff +++ b/date-only.diff @@ -14,9 +14,11 @@ To use this patch, run these commands for a successful build: ./configure (optional if already run) make ---- old/generator.c -+++ new/generator.c -@@ -61,6 +61,7 @@ extern int append_mode; +based-on: a01e3b490eb36ccf9e704840e1b6683dab867550 +diff --git a/generator.c b/generator.c +--- a/generator.c ++++ b/generator.c +@@ -64,6 +64,7 @@ extern int append_mode; extern int make_backups; extern int csum_length; extern int ignore_times; @@ -24,7 +26,7 @@ To use this patch, run these commands for a successful build: extern int size_only; extern OFF_T max_size; extern OFF_T min_size; -@@ -571,6 +572,9 @@ void itemize(struct file_struct *file, i +@@ -523,6 +524,9 @@ void itemize(const char *fnamecmp, struct file_struct *file, int ndx, int statre /* Perform our quick-check heuristic for determining if a file is unchanged. */ int unchanged_file(char *fn, struct file_struct *file, STRUCT_STAT *st) { @@ -34,35 +36,36 @@ To use this patch, run these commands for a successful build: if (st->st_size != F_LENGTH(file)) return 0; ---- old/options.c -+++ new/options.c -@@ -99,6 +99,7 @@ int keep_partial = 0; - int safe_symlinks = 0; +diff --git a/options.c b/options.c +--- a/options.c ++++ b/options.c +@@ -105,6 +105,7 @@ int safe_symlinks = 0; int copy_unsafe_links = 0; + int munge_symlinks = 0; int size_only = 0; +int date_only = 0; int daemon_bwlimit = 0; int bwlimit = 0; int fuzzy_basis = 0; -@@ -340,6 +341,7 @@ void usage(enum logcode F) - rprintf(F," --timeout=TIME set I/O timeout in seconds\n"); +@@ -740,6 +741,7 @@ void usage(enum logcode F) rprintf(F," -I, --ignore-times don't skip files that match in size and mod-time\n"); + rprintf(F," -M, --remote-option=OPTION send OPTION to the remote side only\n"); rprintf(F," --size-only skip files that match in size\n"); + rprintf(F," --date-only skip files that match in mod-time\n"); rprintf(F," --modify-window=NUM compare mod-times with reduced accuracy\n"); rprintf(F," -T, --temp-dir=DIR create temporary files in directory DIR\n"); rprintf(F," -y, --fuzzy find similar file for basis if no dest file\n"); -@@ -460,6 +462,7 @@ static struct poptOption long_options[] +@@ -888,6 +890,7 @@ static struct poptOption long_options[] = { {"chmod", 0, POPT_ARG_STRING, 0, OPT_CHMOD, 0, 0 }, {"ignore-times", 'I', POPT_ARG_NONE, &ignore_times, 0, 0, 0 }, {"size-only", 0, POPT_ARG_NONE, &size_only, 0, 0, 0 }, + {"date-only", 0, POPT_ARG_NONE, &date_only, 0, 0, 0 }, {"one-file-system", 'x', POPT_ARG_NONE, 0, 'x', 0, 0 }, - {"update", 'u', POPT_ARG_NONE, &update_only, 0, 0, 0 }, - {"existing", 0, POPT_ARG_NONE, &ignore_non_existing, 0, 0, 0 }, -@@ -1692,6 +1695,9 @@ void server_options(char **args,int *arg - args[ac++] = "--size-only"; - } + {"no-one-file-system",'x',POPT_ARG_VAL, &one_file_system, 0, 0, 0 }, + {"no-x", 'x', POPT_ARG_VAL, &one_file_system, 0, 0, 0 }, +@@ -2545,6 +2548,9 @@ void server_options(char **args, int *argc_p) + else if (missing_args == 1 && !am_sender) + args[ac++] = "--ignore-missing-args"; + if (date_only) + args[ac++] = "--date-only"; @@ -70,19 +73,20 @@ To use this patch, run these commands for a successful build: if (modify_window_set) { if (asprintf(&arg, "--modify-window=%d", modify_window) < 0) goto oom; ---- old/rsync.yo -+++ new/rsync.yo -@@ -361,6 +361,7 @@ to the detailed description below for a - --timeout=TIME set I/O timeout in seconds +diff --git a/rsync.yo b/rsync.yo +--- a/rsync.yo ++++ b/rsync.yo +@@ -394,6 +394,7 @@ to the detailed description below for a complete description. verb( + --contimeout=SECONDS set daemon connection timeout in seconds -I, --ignore-times don't skip files that match size and time --size-only skip files that match in size + --date-only skip files that match in mod-time --modify-window=NUM compare mod-times with reduced accuracy -T, --temp-dir=DIR create temporary files in directory DIR -y, --fuzzy find similar file for basis if no dest file -@@ -478,6 +479,12 @@ regardless of timestamp. This is useful - after using another mirroring system which may not preserve timestamps - exactly. +@@ -554,6 +555,12 @@ time to just looking for files that have changed in size. This is useful + when starting to use rsync after using another mirroring system which may + not preserve timestamps exactly. +dit(bf(--date-only)) Normally rsync will skip any files that are +already the same size and have the same modification time-stamp. With the