Home Explore Blog CI



man-pages

43th chunk of `rsync.man`
0dd1d963aca8665b37569b26fdedcfb1cb55f65f13dc7e2b0000000100000ffc
 values as
              -e.

              See also the --blocking‐io option which is affected by  this  op‐
              tion.

       --rsync‐path=PROGRAM
              Use  this  to specify what program is to be run on the remote ma‐
              chine to start‐up rsync.  Often used when rsync is not in the de‐
              fault    remote‐shell’s    path    (e.g.    --rsync‐path=/usr/lo‐
              cal/bin/rsync).   Note  that  PROGRAM  is  run with the help of a
              shell, so it can be any  program,  script,  or  command  sequence
              you’d care to run, so long as it does not corrupt the standard‐in
              & standard‐out that rsync is using to communicate.

              One tricky example is to set a different default directory on the
              remote machine for use with the --relative option.  For instance:

                  rsync ‐avR ‐‐rsync‐path="cd /a/b && rsync" host:c/d /e/

       --remote‐option=OPTION, -M
              This  option  is used for more advanced situations where you want
              certain effects to be limited to one side of the  transfer  only.
              For  instance, if you want to pass --log‐file=FILE and --fake‐su‐
              per to the remote system, specify it like this:

                  rsync ‐av ‐M ‐‐log‐file=foo ‐M‐‐fake‐super src/ dest/

              If you want to have an option affect only the  local  side  of  a
              transfer  when  it normally affects both sides, send its negation
              to the remote side.  Like this:

                  rsync ‐av ‐x ‐M‐‐no‐x src/ dest/

              Be cautious using this, as it is possible  to  toggle  an  option
              that will cause rsync to have a different idea about what data to
              expect  next  over  the  socket,  and that will make it fail in a
              cryptic fashion.

              Note that you should use a separate -M option for each remote op‐
              tion you want to pass.  On older rsync versions, the presence  of
              any  spaces  in  the remote‐option arg could cause it to be split
              into separate remote args, but this requires the  use  of  --old‐
              args in a modern rsync.

              When  performing a local transfer, the "local" side is the sender
              and the "remote" side is the receiver.

              Note some versions of the popt option‐parsing library have a  bug
              in  them  that  prevents  you  from using an adjacent arg with an
              equal in  it  next  to  a  short  option  letter  (e.g.  -M--log‐
              file=/tmp/foo).   If  this  bug affects your version of popt, you
              can use the version of popt that is included with rsync.

       --cvs‐exclude, -C
              This is a useful shorthand for excluding a broad range  of  files
              that you often don’t want to transfer between systems.  It uses a
              similar  algorithm  to  CVS  to determine if a file should be ig‐
              nored.

              The exclude list is initialized to exclude  the  following  items
              (these  initial  items are marked as perishable -- see the FILTER
              RULES section):

                  RCS SCCS CVS CVS.adm RCSLOG cvslog.*  tags  TAGS  .make.state
                  .nse_depinfo  *~  #*  .#*  ,* _$* *$ *.old *.bak *.BAK *.orig
                  *.rej .del‐* *.a *.olb *.o *.obj *.so *.exe  *.Z  *.elc  *.ln
                  core .svn/ .git/ .hg/ .bzr/

              then,  files  listed  in a $HOME/.cvsignore are added to the list
              and any files listed in the CVSIGNORE environment  variable  (all
              cvsignore names are delimited by whitespace).

              Finally,  any file is ignored if it is in the same directory as a
              .cvsignore file and matches one of the patterns  listed  therein.
              Unlike  rsync’s filter/exclude files, these patterns are split on
       

Title: Rsync Options: --remote-option, --cvs-exclude
Summary
This section describes the rsync options: --remote-option, which allows specifying options that apply only to one side of the transfer, including how to negate options and the potential for cryptic failures; and --cvs-exclude, a shorthand for excluding common files and directories like CVS metadata, backups, and object files, using a similar algorithm to CVS and incorporating patterns from .cvsignore files and the CVSIGNORE environment variable.