Programmers' Canvas Toolkit Home

Accessing CVS via SSH on Windows


Self-service advertising system

03 Oct 2004 20:19

Using CVS

CVS over SSH Server

Secure Shell

Putty

Open Source Development with CVSCvs Pocket ReferenceEssential CVS


Introduction

CVS servers can transfer data via the secure shell (ssh) protocol.  SSH is preferable to pserver due to its superior encryption of passwords.

If you want to develop open-source software that's hosted on SourceForge, you have to use SSH.

Please note that TortoiseCVS has built-in support for SSH (hooray!) and the latest version of CVSNT has some level of support for it, although I haven't been able to get it to work.


TortoiseCVS Configuration

This is by far the easiest strategy because TortoiseCVS supports SSH out of the box!


Hiding Your Password without Public Keys

If you want to avoid typing your password at the command line for each operation and don't have the ability to put your public key on the SSH server...

  1. Create the following one-line Perl script and save it as my_ssh_cvs.pl
    system("plink.exe", "-ssh", "-pw", "YOURPASSWORD", @ARGV);
  2. Use PERL2EXE or ActiveState's perldevkit (perlapp -f my_ssh_cvs.pl) to create an executable from the script, e.g., my_ssh_cvs.exe
  3. Delete my_ssh_cvs.pl
  4. Run WinCVS
  5. Select Admin/Preferences...
  6. Click Settings... (for the ssh protocol)
  7. Click "If ssh is not in the PATH" and enter my_ssh_cvs.exe
  8. For "additional SSH options", leave it blank

Troubleshooting

See here.


Setting up CVSNT Server Access via SSH on Windows

I have not tried this myself.  Theoretically it should be possible to run CVSNT via SSH as long as you install a SSH server on the CVS server.

Cygwin has a free SSH server for Windows.  There is serious a problem with the Cygwin server.

Also, try VanDyke VShell.  It doesn't have the public key authentication bug and it's a heck of a lot easier to install.