DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(cvs.info.gz) Connecting via rsh

Info Catalog (cvs.info.gz) The connection method (cvs.info.gz) Remote repositories (cvs.info.gz) Password authenticated
 
 2.9.3 Connecting with rsh
 -------------------------
 
 CVS uses the `rsh' protocol to perform these operations, so the remote
 user host needs to have a `.rhosts' file which grants access to the
 local user. Note that the program that CVS uses for this purpose may be
 specified using the `--with-rsh' flag to configure.
 
    For example, suppose you are the user `mozart' on the local machine
 `toe.example.com', and the server machine is `faun.example.org'.  On
 faun, put the following line into the file `.rhosts' in `bach''s home
 directory:
 
      toe.example.com  mozart
 
 Then test that `rsh' is working with
 
      rsh -l bach faun.example.org 'echo $PATH'
 
    Next you have to make sure that `rsh' will be able to find the
 server.  Make sure that the path which `rsh' printed in the above
 example includes the directory containing a program named `cvs' which
 is the server.  You need to set the path in `.bashrc', `.cshrc', etc.,
 not `.login' or `.profile'.  Alternately, you can set the environment
 variable `CVS_SERVER' on the client machine to the filename of the
 server you want to use, for example `/usr/local/bin/cvs-1.6'.  For the
 `ext' and `fork' methods, you may also specify CVS_SERVER as an otpion
 in the CVSROOT so that you may use different servers for differnt
 roots. See  Remote repositories for more details.
 
    There is no need to edit `inetd.conf' or start a CVS server daemon.
 
    There are two access methods that you use in `CVSROOT' for rsh.
 `:server:' specifies an internal rsh client, which is supported only by
 some CVS ports.  `:ext:' specifies an external rsh program.  By default
 this is `rsh' (unless otherwise specified by the `--with-rsh' flag to
 configure) but you may set the `CVS_RSH' environment variable to invoke
 another program which can access the remote server (for example,
 `remsh' on HP-UX 9 because `rsh' is something different).  It must be a
 program which can transmit data to and from the server without modifying
 it; for example the Windows NT `rsh' is not suitable since it by
 default translates between CRLF and LF.  The OS/2 CVS port has a hack
 to pass `-b' to `rsh' to get around this, but since this could
 potentially cause problems for programs other than the standard `rsh',
 it may change in the future.  If you set `CVS_RSH' to `SSH' or some
 other rsh replacement, the instructions in the rest of this section
 concerning `.rhosts' and so on are likely to be inapplicable; consult
 the documentation for your rsh replacement.
 
    You may choose to specify the CVS_RSH option in the CVSROOT to allow
 you to use different ones for different roots. For example, allowing
 some roots to use CVS_RSH=REMSH and some to use CVS_RSH=SSH for the
 `ext' method. See also the  Remote repositories for more details.
 
    Continuing our example, supposing you want to access the module
 `foo' in the repository `/usr/local/cvsroot/', on machine
 `faun.example.org', you are ready to go:
 
      cvs -d :ext:bach@faun.example.org:/usr/local/cvsroot checkout foo
 
 (The `bach@' can be omitted if the username is the same on both the
 local and remote hosts.)
 
Info Catalog (cvs.info.gz) The connection method (cvs.info.gz) Remote repositories (cvs.info.gz) Password authenticated
automatically generated byinfo2html