Commit Graph

2899 Commits

Author SHA1 Message Date
Wayne Davison
16e5de84da Document --filter (-f) and -F, with lots of changes to the
include/exclude sections, including a little restructuring.
2005-01-25 00:53:03 +00:00
Wayne Davison
46fa602530 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.
2005-01-25 00:52:59 +00:00
Wayne Davison
aa4d3b4cc0 - Added parsing for --filter (-f) and -F.
- Changed the include/exclude calls to work with the new XFLG_* values.
2005-01-25 00:52:56 +00:00
Wayne Davison
73ed23495e Added the "filter" parameter. 2005-01-25 00:52:53 +00:00
Wayne Davison
c7d970f782 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.
2005-01-25 00:52:50 +00:00
Wayne Davison
6dfd07d025 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.
2005-01-25 00:52:47 +00:00
Wayne Davison
e7bf7c0161 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.
2005-01-25 00:52:44 +00:00
Wayne Davison
f5a7b9e716 Improved the explanation for --omit-dir-times. 2005-01-25 00:47:35 +00:00
Wayne Davison
b951e023ec Moved the code that reads the extra byte for a modern inplace
transfer up nearer the code that reads the index.
2005-01-24 17:19:04 +00:00
Wayne Davison
3ea9bbd632 Optimized away the post-transfer directory loop in certain
circumstances.
2005-01-24 06:19:58 +00:00
Wayne Davison
aaca3daa27 Document --delete-before and --delete's new "during" behavior. 2005-01-24 01:41:57 +00:00
Wayne Davison
a51b316824 Added the delete-during handling (also selected with --delete) and
added --delete-before for the old delete logic.
2005-01-24 01:41:54 +00:00
Wayne Davison
928a00c474 Moved a call to add_cvs_exclude() from the delete code to one code-
path in this file.  This avoids a potential duplication of the
cvs-excludes that would occur in the old logic.
2005-01-24 01:41:51 +00:00
Wayne Davison
fa13f396d5 Added code to implement the delete-during handling. 2005-01-24 01:41:48 +00:00
Wayne Davison
3ab56a20ee Moved some of the delete code into flist.c since the generator now
calls it for the delete-during handling.
2005-01-24 01:41:45 +00:00
Wayne Davison
649f874292 Moved some of the delete code from receiver.c to here and implemented
the handling for delete_during (which is called from the generator).
2005-01-24 01:41:42 +00:00
Wayne Davison
90fdd89a0b Mention the --omit-dir-times option. 2005-01-24 00:56:37 +00:00
Wayne Davison
54e66f1d59 Document --omit-dir-times. 2005-01-24 00:51:38 +00:00
Wayne Davison
82471e68a8 Honor the new omit_dir_times var. 2005-01-24 00:51:34 +00:00
Wayne Davison
20fb7b9175 Added --omit-dir-times (-O). 2005-01-24 00:51:32 +00:00
Wayne Davison
859fdaad45 Mentioned the --dirs and --list-only options. 2005-01-24 00:34:53 +00:00
Wayne Davison
09ed309996 - Changed --keep-dirs (-k) into --dirs (-d).
- Document --list-only.
2005-01-24 00:17:42 +00:00
Wayne Davison
65e4cda059 - Changed --keep-dirs (-k) into --dirs (-d).
- Renamed keep_dirs to xfer_dirs.
- Mention --list-only in the --help.
2005-01-24 00:17:39 +00:00
Wayne Davison
7e037c4226 Renamed keep_dirs, "xfer_dirs". 2005-01-24 00:17:36 +00:00
Wayne Davison
f636c38440 Document the new --keep-dirs option. 2005-01-23 16:49:09 +00:00
Wayne Davison
b98f040ef2 Go back to requiring -r for deletes to happen. 2005-01-23 07:27:01 +00:00
Wayne Davison
e57211c544 When an option defined with POPT_ARG_VAL is being refused, we must
change it to POPT_ARG_NONE or it won't be refused.
2005-01-23 01:25:36 +00:00
Wayne Davison
48a1ff0d45 - Use the new delete_before var.
- Check the "keep_dirs" var instead of "recurse" to decide if
  delete is appropriate.
2005-01-22 22:48:40 +00:00
Wayne Davison
032dcf74b0 Check the "keep_dirs" var instead of "recurse" to decide if
delete-after is appropriate.
2005-01-22 22:48:37 +00:00
Wayne Davison
51d4839861 - We now set a delete_before variable for the --delete option.
- Reordered some of the options in the --help list.
- Made the popt-handling of the delete options simpler.
- Parse the new --keep-dirs option.
- Parse the new --list-only option.
- Set recurse to -1 (infinite) for the -r and -a options.
- Set keep_dirs for --list-only.
2005-01-22 22:48:34 +00:00
Wayne Davison
9f125ea7c1 - Implemented a new handling of the recurse variable: if it is
< 0, it specifies infinite recursion, otherwise it contains a
  count of how many levels of recursion we will allow.
- If the user is processing/listing a non-recursive directory/
  arg, send the contents.
2005-01-22 22:48:31 +00:00
Wayne Davison
9bcb25958d - Mustn't override a user-specified list_only value.
- Moved the computing of the options for the server down until
  after we've figured out the protocol_version for the transfer.
- If we're talking to a protocol-29 server in list-only mode,
  force the new --list-only mode (which avoids the -r with
  --exclude="/*/*" kluge).
- Output the options we sent to the daemon if verbose > 1.
2005-01-22 22:48:27 +00:00
Wayne Davison
866925bfb7 Changed the order of a few of the options in the options summary. 2005-01-22 20:32:03 +00:00
Wayne Davison
f8b3c05311 Mustn't override a user-specified list_only value. 2005-01-22 20:28:17 +00:00
Wayne Davison
353f272434 Changed a comment. 2005-01-22 20:27:22 +00:00
Wayne Davison
3d54c6ec46 Moved the /proc/mounts literal string nearer to the top. 2005-01-22 08:11:43 +00:00
Wayne Davison
71e27c463d - Changed XMIT_TOP_DIR to XMIT_DEL_START.
- Changed FLAG_TOP_DIR to FLAG_DEL_START.
2005-01-21 00:34:37 +00:00
Wayne Davison
8c48382049 Don't mention when the file-list is first allocated, just when it
expands.
2005-01-20 23:57:35 +00:00
Wayne Davison
11781089d1 In delete_file(): got rid of DEL_NO_RECURSE code and added
DEL_RECURSE code.  Improved the verbose output of a recursively
deleted directory when --dry-run is specified.
2005-01-20 23:51:57 +00:00
Wayne Davison
d97fd43a72 Decided that delete_in_dir()'s call to delete_file() would be
better using DEL_RECURSE.
2005-01-20 23:51:55 +00:00
Wayne Davison
f5ea4b3b39 Changed DEL_NO_RECURSE to DEL_RECURSE. 2005-01-20 23:51:52 +00:00
Wayne Davison
f227ffe4b9 Moved the dry_run check in set_perms() so that it only triggers if
we don't have a stat-buffer (and returns 1, not 0).
2005-01-20 23:01:34 +00:00
Wayne Davison
027428eb1d Got rid of the erroneous --dry-run short-circuit in the directory
handling.
2005-01-20 22:59:54 +00:00
Wayne Davison
15778afbdc In set_modtime(), the verbose message should be output even if
--dry-run was specified.
2005-01-20 22:58:30 +00:00
Wayne Davison
d06f63287e - Got rid of the uint64 typedef.
- Changed the dev/inode vars to use int64.
2005-01-20 22:43:32 +00:00
Wayne Davison
1490812ab2 Switched uint64 vars over to int64. 2005-01-20 22:42:47 +00:00
Wayne Davison
707415d4fc Use int64 instead of uint64. 2005-01-20 22:37:38 +00:00
Wayne Davison
9cea6ef1b6 Improved a confusing sentence in the description of subcomponent
include/exclude matching.
2005-01-20 19:31:42 +00:00
Wayne Davison
48ea74bf01 When outputting the file list created for the delete pass, identify
it as such.
2005-01-20 00:53:15 +00:00
Wayne Davison
026deaf759 Added an example of running mnt-excl remotely via ssh for a pull. 2005-01-19 21:07:09 +00:00