GNU Info

Info Node: (cvs.info)Connecting via rsh

(cvs.info)Connecting via rsh


Next: Password authenticated Prev: Server requirements Up: Remote repositories
Enter node , (file) or (file)node

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.

   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'.

   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.  This is not supported on most Unix-style systems,
including Debian.  `:ext:' specifies an external rsh program.  By
default this is `rsh' 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,
or `ssh' to allow the use of secure and/or compressed connections).  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.

   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.)


automatically generated by info2www version 1.2.2.9