Seth Thompson's CVSNT + Eclipse = Pain FAQ

In the spring semester of 2005, the UNM CS351 class experimented with the Eclipse+CVS combination. It was widely noted that this is pretty painful on a windows platform. Seth Thompson undertook to solve these issues and produced the following set of directions on how to get the configuration up and running:

Were I to write a FAQ for Windows users about hooking up CVSNT to Eclipse, the first few questions would begin with encoded obscenities (i.e., "What the #&%$..."), so instead I'll just post what I did to get mine working, and hope it helps others.

Note: I'm running Windows XP with password authentication on my account. Some details may differ if your setup is different. Good luck!

SETTING UP CVSNT

  1. Download the latest version (2.0.58d) of CVSNT from www.cvsnt.org
  2. .
  3. Install it using the default options offered by the installer. You may have to reboot.
  4. CVSNT should be installed in a folder of the same name under Start...Programs. Start the Service control panel application.
  5. On the Service Status tab, make sure both services are running.
  6. On the Compatibilty tab, turn on all three checkboxes for the "Generic non-cvsnt" client. (This instruction comes from the CVSNT Release Notes.)
  7. From the Repositories tab click "Add" to create a new repository.
    1. You will need to select a directory for your repository. I suggest you create a new directory dedicated to this repository. Remember from lab how many files it makes? I placed mine right under my CS351 folder.
    2. After you select a directory location, CVSNT will automatically fill in the Name field. Do not change the name! Eclipse is expecting the repository location as a *NIX format directory, so CVSNT fakes it out using the name. Copy the name to a text editor so you can put it in Eclipse exactly as defined in CVSNT.
    3. Click OK to create the repositry. If it gives you some guff about characters in the repository name possibly creating compatibility problems with certain clients, laugh arrogantly and click "Yes", secretly knowing that if anything goes wrong because of this you may on your own, alone, in the dark in terms of fixing it. That usually (sometimes) works for me. You may have to click "Yes" once for each space character in the name. It's just testing your confidence. Show no fear.

SETTING UP ECLIPSE

  1. Open the CVS Repository Perspective (Window...Open Perspective...Other...CVS Repository Exploring).
  2. With a right-click in the CVS Repositories pane, select New...Repository Location from the context menu. There's also a button at the top of the pane, but those button icons take some getting used to. They do have descriptive popups if you hover your mouse over them, though.
  3. In the Add CVS Repository window that pops up, insert the following info, without the quotes.
    1. Host: "127.0.0.1" (a standard TCP/IP self-reference)
    2. Repository path: Paste the repository name you copied from CVSNT.
    3. User/Password: Your Windows username and password (password optional.)
    4. Connection Type: "pserver"
    5. Use Default Port: Yes
    6. Validate connection on Finish: Yes
    7. Save Password: Up to you.
  4. Say a little prayer and click Finish.

With the Validate connection on Finish option turned on, Eclipse will tell you whether or not it was able to connect to the repository. If not, it gives you the option of going back to the setup screen to change settings. If it can connect, the repository will will appear in the list of CVS Repostories.

If your Windows account requires a password, Eclipse will prompt you for it if you didn't provide it. If you don't save the password, Eclipse will prompt for it whenever it opens the repository (only once per session, fortunately).

From this point, you can read the Eclipse help files about about using CVS. There is fairly useful help on actually using CVS for creating projects, checking in/out, updating, committing, etc. Since you're probably at least half done coding (right?), there is an option for saving an existing project to the repository.

Again, good luck!
Seth J. Thompson