Wayne Davison [Mon, 31 Jan 2005 23:41:08 +0000 (23:41 +0000)]
- Mark references to command-line switches with the bf(...) macro.
- Changed some verb(...) macros to use other yodl idioms because
yodl inserts way too much vertical whitespace surrounding the
item.
- Some items weren't indenting enough in the manpage, though they
were indenting fine in the HTML version, so used some creative
idioms to get things to render well in both.
- Got rid of some empty lines in lists.
- Made several quote(...) items also tt(...).
Wayne Davison [Sun, 30 Jan 2005 10:06:18 +0000 (10:06 +0000)]
The --delete-during processing only happens during the first phase
(not the redo phase). We also call delete_in_dir(NULL, NULL) to
make sure that all the local filter files get popped.
Wayne Davison [Sun, 30 Jan 2005 09:12:55 +0000 (09:12 +0000)]
- Now delete_in_dir() calls send_directory(), not send_file_name().
- Moved the local-list push/pop code out of send_directory() so that
the callers (send_file_name() and delete_in_dir()) can call the
push/pop functions themselves. This is in preparation for
delete_in_dir() getting fully correct push/pop semantics (for
its --delete-during handling of per-dir filter files).
Wayne Davison [Sat, 29 Jan 2005 22:35:44 +0000 (22:35 +0000)]
- Improved the handling of -x with -K.
- Changed delete_in_dir() to only be used by the --delete-during
option.
- Added delete_missing() that is used by both delete_files() and
delete_in_dir().
- delete_files() still uses send_file_list(), but delete_in_dir()
now uses send_file_name().
Wayne Davison [Sat, 29 Jan 2005 20:48:17 +0000 (20:48 +0000)]
- Renamed make_filter() to filter_rule().
- Added the "/" modifier to the -/+ filter rules to allow the
rule to specify an absolute path (sets MATCHFLG_ABS_PATH).
- Added the passing of the xflgags to filter_rule() and key off
XFLG_ANCHORED2ABS to prepend the current dirbuf value (was
keing off MATCHFLG_ABS_PATH).
- We no longer allow a '=' to separate the filter rule from its
arg (just a single space or an underscore).
- For triple verbose levels, mention when we look for a filter
file even if we don't find it (used to only mention the file
when it was found).
- A chrooted daemon process now includes /.cvsignore (inside the
chrooted hierarchy) instead of $HOME/.cvsignore.
Wayne Davison [Fri, 28 Jan 2005 18:50:54 +0000 (18:50 +0000)]
- Changed the main core of system include files to use the same "#if"
idioms that configure uses.
- Use "#if" (not "#ifdef") for configure-defined macros.
- Use "#if !" (not "#ifndef") for configure-defined macros.
Wayne Davison [Fri, 28 Jan 2005 17:10:16 +0000 (17:10 +0000)]
- Moved read_only variable here from options.c
- Set read_only to 1 if the module is read-only.
- Make sure that the verbose level is 0 before we parse the client's
options.
Wayne Davison [Fri, 28 Jan 2005 07:39:09 +0000 (07:39 +0000)]
Added back support for the --delete-before option so that future
verions of rsync can more easily change the default that --delete
implies and still support explicit --delete-before functionality
when interacting with older versions.
Wayne Davison [Fri, 28 Jan 2005 06:45:16 +0000 (06:45 +0000)]
- Switched the int64 code over to using the improved SIZEOF_*
macros.
- Define SIZEOF_INT64 to a value that is useable at compile time.
- Got rid of INT64_IS_OFF_T.
Wayne Davison [Fri, 28 Jan 2005 02:00:40 +0000 (02:00 +0000)]
- Made some of the tests work better when cross-compiling.
- Added descriptions for all config.h variables that had none.
- Changed HAVE_UNSIGNED_CHAR to SIGNED_CHAR_OK.
- Got rid of (the unused) HAVE_SHORT_INO_T.
- Changed version to 2.6.4cvs (long overdue).
Wayne Davison [Tue, 25 Jan 2005 12:13:53 +0000 (12:13 +0000)]
- Use the "--filter=._-" option instead of --exclude-from=- if the
protocol being saved is >= 29.
- Call the new get_rule_prefix() function to figure out the right
rule prefix.
- Strip out the --filter and -f options from the cached command-line.
Wayne Davison [Tue, 25 Jan 2005 12:10:31 +0000 (12:10 +0000)]
- Moved the code that turns rule flags into chars into a new
function called get_rule_prefix().
- Don't pass the per-dir .cvsignore rule from -C for protocols < 29.
Wayne Davison [Tue, 25 Jan 2005 12:05:20 +0000 (12:05 +0000)]
- The call to delete_file() needs DEL_NO_RECURSE when handling
delete_before or delete_after or --dry-run will report too
many deletions.
- Changed DEL_RECURSE to DEL_FORCE_RECURSE.
Wayne Davison [Tue, 25 Jan 2005 03:09:06 +0000 (03:09 +0000)]
Mention that --del is a popt alias for --delete-during, so there's
no need to refuse "del" by name -- just refusing "delete-during" or
"delete*" is sufficient.
Wayne Davison [Tue, 25 Jan 2005 03:08:58 +0000 (03:08 +0000)]
- Changed --delete to go back to defaulting to the delete-before
functionality.
- Got rid of --delete-before.
- Added --delete-during.
- Added a popt alias for --delete-during: --del.
- Fixed a bug in the generation of the proper --delete options
for the server.
- Generate an error if the user tries to specify both --delete-during
and --delete-after.
Wayne Davison [Tue, 25 Jan 2005 00:52:59 +0000 (00:52 +0000)]
Some changes to support the new --filter option:
- Changed XFLG_WORDS_ONLY to XFLG_NO_PREFIXES.
- Added XFLG_DEF_EXCLUDE and XFLG_ABS_PATH.
- Added some new MATCHFLG_* values for the new merge-file support.
- Put the "slash_cnt" var (in the exclude_struct) into a union with
the new megelist pointer.
Wayne Davison [Tue, 25 Jan 2005 00:52:50 +0000 (00:52 +0000)]
The calls into the exclude system changed a little for the new --filter
option:
- The special handling for cvs_exclude went away.
- Call push_local_excludes() and pop_local_excludes() instead of fiddling
with the (no longer present) local_exclude_list var.
Wayne Davison [Tue, 25 Jan 2005 00:52:47 +0000 (00:52 +0000)]
Implemented the core of the merge-file and per-dir merge-file support
for the --filter option. Some noteworthy changes:
- Added push_local_excludes() and pop_local_excludes() to implement
the changes needed as we go from directory to directory (this takes
the place of the old local_exclude_list var that only handled the
.cvsignore files). These per-dir excludes are linked into the same
exclude list as the global excludes.
- The exclude list is transferred as filter rules to an rsync that
talks protocol 29 or above. It limits itself to just include/exclude
rules for older rsyncs.
Wayne Davison [Tue, 25 Jan 2005 00:52:44 +0000 (00:52 +0000)]
Some exclude changes for the new --filter option, including:
- Added module_dirlen var.
- Call set_excludes_dir() instead of setting exclude_path_prefix.
- Use the newest XFLG_* options.