X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/f83f054875254ab48afaddcd8c985205ef9416e1..896bd482c0c87d11e19f9bcffbcb35c6aba00e43:/rsync.yo diff --git a/rsync.yo b/rsync.yo index 5bcbc311..9f27cf97 100644 --- a/rsync.yo +++ b/rsync.yo @@ -1,5 +1,5 @@ mailto(rsync-bugs@samba.org) -manpage(rsync)(1)(17 Feb 1999)()() +manpage(rsync)(1)(22 Feb 1999)()() manpagename(rsync)(faster, flexible replacement for rcp) manpagesynopsis() @@ -250,6 +250,7 @@ Options --rsync-path=PATH specify path to rsync on the remote machine -C, --cvs-exclude auto ignore files in the same way CVS does --delete delete files that don't exist on the sending side + --delete-excluded also delete excluded files on the receiving side --partial keep partially transferred files --force force deletion of directories even if not empty --numeric-ids don't map uid/gid values by user/group name @@ -430,12 +431,12 @@ boundaries when recursing. This is useful for transferring the contents of only one filesystem. dit(bf(--delete)) This tells rsync to delete any files on the receiving -side that aren't on the sending side. This option can be dangerous if -used incorrectly! +side that aren't on the sending side. Files that are excluded from +transfer are excluded from being deleted unless you use --delete-excluded. -It is a very good idea to run first using the dry run option (-n) to -see what files would be deleted to make sure important files aren't -listed. +This option can be dangerous if used incorrectly! It is a very good idea +to run first using the dry run option (-n) to see what files would be +deleted to make sure important files aren't listed. rsync 1.6.4 changed the behavior of --delete to make it less dangerous. rsync now only scans directories on the receiving side @@ -452,6 +453,10 @@ prevent temporary filesystem failures (such as NFS errors) on the sending side causing a massive deletion of files on the destination. +dit(bf(--delete-excluded)) In addition to deleting the files on the +receiving side that are not on the sending side, this tells rsync to also +delete any files on the receiving side that are excluded (see --exclude). + dit(bf(--force)) This options tells rsync to delete directories even if they are not empty. This applies to both the --delete option and to cases where rsync tries to copy a normal file but the destination @@ -641,14 +646,15 @@ itemize( directory, not a file, link or device. it() if the pattern contains a wildcard character from the set - *?[ then regular expression matching is applied using the - normal shell filename matching rules. Otherwise a simple string - match is used. + *?[ then expression matching is applied using the shell filename + matching rules. Otherwise a simple string match is used. it() if the pattern contains a / (not counting a trailing /) then it is matched against the full filename, including any leading directory. If the pattern doesn't contain a / then it is matched - only against the final component of the filename. + only against the final component of the filename. Furthermore, if + the pattern includes a double asterisk "**" then all wildcards in + the pattern will match slashes, otherwise they will stop at slashes. it() if the pattern starts with "+ " (a plus followed by a space) then it is always considered an include pattern, even if specified as @@ -671,6 +677,10 @@ itemize( it() --exclude "*.o" would exclude all filenames matching *.o it() --exclude "/foo" would exclude a file in the base directory called foo it() --exclude "foo/" would exclude any directory called foo + it() --exclude "/foo/*/bar" would exclude any file called bar two + levels below a base directory called foo + it() --exclude "/foo/**/bar" would exclude any file called bar two + or more levels below a base directory called foo it() --include "*/" --include "*.c" --exclude "*" would include all directories and C source files it() --include "foo/" --include "foo/bar.c" --exclude "*" would include