From 623f244325defdb12b965ccae14c3a4c4885a8e3 Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Wed, 4 Aug 2004 08:46:08 +0000 Subject: [PATCH] Improved the manpage and added the missing --inherit option to the help output. --- filter.diff | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/filter.diff b/filter.diff index ba553ca..75a855d 100644 --- a/filter.diff +++ b/filter.diff @@ -612,7 +612,7 @@ contained a slash. } --- orig/options.c 2004-08-03 15:41:32 -+++ options.c 2004-08-03 15:41:39 ++++ options.c 2004-08-04 08:36:48 @@ -51,6 +51,7 @@ int preserve_gid = 0; int preserve_times = 0; int update_only = 0; @@ -621,7 +621,15 @@ contained a slash. int dry_run = 0; int local_server = 0; int ignore_times = 0; -@@ -319,7 +320,7 @@ void usage(enum logcode F) +@@ -287,6 +288,7 @@ void usage(enum logcode F) + rprintf(F," --exclude-from=FILE exclude patterns listed in FILE\n"); + rprintf(F," --include=PATTERN don't exclude files matching PATTERN\n"); + rprintf(F," --include-from=FILE don't exclude patterns listed in FILE\n"); ++ rprintf(F," --inherit=DEPTH inherit contents of per-dir merge files\n"); + rprintf(F," --files-from=FILE read FILE for list of source-file names\n"); + rprintf(F," -0, --from0 all *-from file lists are delimited by nulls\n"); + rprintf(F," --version print version number\n"); +@@ -319,7 +321,7 @@ void usage(enum logcode F) enum {OPT_VERSION = 1000, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM, OPT_DELETE_AFTER, OPT_DELETE_EXCLUDED, OPT_LINK_DEST, @@ -630,7 +638,7 @@ contained a slash. OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_TIMEOUT, OPT_REFUSED_BASE = 9000}; -@@ -344,6 +345,7 @@ static struct poptOption long_options[] +@@ -344,6 +346,7 @@ static struct poptOption long_options[] {"include", 0, POPT_ARG_STRING, 0, OPT_INCLUDE, 0, 0 }, {"exclude-from", 0, POPT_ARG_STRING, 0, OPT_EXCLUDE_FROM, 0, 0 }, {"include-from", 0, POPT_ARG_STRING, 0, OPT_INCLUDE_FROM, 0, 0 }, @@ -638,7 +646,7 @@ contained a slash. {"safe-links", 0, POPT_ARG_NONE, &safe_symlinks, 0, 0, 0 }, {"help", 'h', POPT_ARG_NONE, 0, 'h', 0, 0 }, {"backup", 'b', POPT_ARG_NONE, &make_backups, 0, 0, 0 }, -@@ -566,6 +568,31 @@ int parse_arguments(int *argc, const cha +@@ -566,6 +569,31 @@ int parse_arguments(int *argc, const cha XFLG_FATAL_ERRORS | XFLG_DEF_INCLUDE); break; @@ -670,7 +678,7 @@ contained a slash. case 'h': usage(FINFO); exit_cleanup(0); -@@ -969,6 +996,12 @@ void server_options(char **args,int *arg +@@ -969,6 +997,12 @@ void server_options(char **args,int *arg if (x != 1) args[ac++] = argstr; @@ -712,12 +720,12 @@ contained a slash. struct exclude_list_struct { --- orig/rsync.yo 2004-08-03 15:34:32 -+++ rsync.yo 2004-08-03 15:34:44 ++++ rsync.yo 2004-08-04 08:36:18 @@ -334,6 +334,7 @@ verb( --exclude-from=FILE exclude patterns listed in FILE --include=PATTERN don't exclude files matching PATTERN --include-from=FILE don't exclude patterns listed in FILE -+ --inherit=DEPTH make per-dir merge files inherited ++ --inherit=DEPTH inherit contents of per-dir merge files --files-from=FILE read FILE for list of source-file names -0 --from0 all file lists are delimited by nulls --version print version number @@ -729,7 +737,7 @@ contained a slash. +contents of per-directory merge files is inherited by the subdirectories of +the spot where the rules were read in. If a subdirectory has its own +per-directory merge file, its contents are prefixed to the inherited rules, -+which gives them higher priority. ++which gives the newest rules a higher priority than the inherited rules. + +The DEPTH value tells rsync how much deeper than the root directory of the +transfer should be scanned for merge files. If you don't need any higher @@ -739,7 +747,7 @@ contained a slash. +supply the count of how many parent-directory levels should be scanned. +The reason this is useful is that you may wish to transfer just a small +portion of a larger tree of files, but to be sure to get all the -+appropriate exclude rules, you need to be sure that rsync reads in all the ++appropriate exclude rules, you need to make rsync read in all the +merge files from the top of the tree of related files. + +Note also that you can eliminate all the inherited rules for the current @@ -754,8 +762,8 @@ contained a slash. then it is always considered an exclude pattern, even if specified as part of an include option. The prefix is discarded before matching. -+ it() if the pattern starts with ". " (a dot followed by a space) then it -+ its pattern is taken to be a merge file that is read in to supplement the ++ it() if the pattern starts with ". " (a dot followed by a space) then its ++ pattern is taken to be a merge file that is read in to supplement the + current rules. See the section on MERGING EXCLUDE FILES for more + information. + @@ -820,8 +828,8 @@ contained a slash. +Note also that the parsing of any merge-file named ".cvsignore" is always +done in a CVS-compatible manner, even if -C wasn't specified (i.e. the +rules are always exclude rules (even when specified by an include option); -+they are split on whitespace; and no special prefixes, list-clearing -+tokens, or comment characters are honored). ++they are split on whitespace; the contents is never inherited; and no ++prefixes, list-clearing tokens, or comment characters are honored). + +See the --inherit option for how to make the rules read from a +per-directory merge file inherited by all the subdirectories of the -- 2.34.1