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:
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
is the server. You need to set the path in
`.bashrc', `.cshrc', etc., not `.login'
or `.profile'. Alternately, you can set the
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 `/etc/inetd.conf' or start a CVS server daemon.
There are two access methods that you use in
: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 but you may set the
CVS_RSH environment variable to invoke another
program which can access the remote server (for
remsh on HP-UX 9 because
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'
rsh to get around this, but since this could
potentially cause problems for programs other than the
rsh, it may change in the future. If
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
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:email@example.com/usr/local/cvsroot checkout foo
(The `bach@' can be omitted if the username is the same on both the local and remote hosts.)
Go to the first, previous, next, last section, table of contents.