There are numerous graphical front ends to the various packages on regardless which
front-end you choose, you will need to configure the back-end part below.

Front ends

Back Ends

For write access to repositories on cdcvs, I am currently recommending that users use a kerberized ssh,
which comes stock with MacOSX 10.3 and later.

I recommend for your $HOME/.ssh/config:

  host *
   GSSAPIAuthentication yes
   GSSAPIDelegateCredentials yes
   ForwardX11 = no
   # ForwardAgent = yes # only if you're using ssh keys, and not kerberos
   GSSAPIAuthentication yes
   GSSAPIDelegateCredentials yes

and on newer systems add also
  GSSAPITrustDNS yes

in both those sections.

Also, make sure your kerberos tickets are forwardable -- in a Terminal window:

  $ klist -f
  Ticket cache: FILE:/tmp/krb5cc_1733_m02jhk
  Default principal: mengel@FNAL.GOV

  Valid starting     Expires            Service principal
  06/10/11 09:51:47  06/11/11 11:51:46  krbtgt/FNAL.GOV@FNAL.GOV
    renew until 06/17/11 09:51:46, Flags: FRIA

Note the "F" in the Flags: section. If that isn't happening, check your
/etc/krb5.conf under libdefaults and appdefaults:

        forward = true
        forwardable = true
        kinit = {
                forwardable = true

      pam = {
                debug = false
                forwardable = true

Check if it works:

try to login on the server with ssh:

ssh  echo hi

(where "project" is your project name). You should get:

Only 'lscvs' and 'cvs' commands are allowed


Set CVS_RSH to /usr/bin/ssh in your environment.

export CVS_RSH=/usr/bin/ssh

or for tcsh/csh

setenv CVS_RSH /usr/bin/ssh


Subversion just uses ssh automagically.


Git just uses ssh automagically.