Click here to Skip to main content
14,842,109 members
Articles / Programming Languages / C++
Posted 4 Nov 2002


93 bookmarked


Rate me:
Please Sign up or sign in to vote.
4.25/5 (25 votes)
17 Feb 2003CPOL4 min read
An introductory HOWTO on setting up CVS with VS.NET


I have looked for several months how to use some kind of source control on my projects. Up to now , I had very little success, or the integration and usage of the client software were too difficult. With this, I will show you step by step how to set up a local CVS server and use that directly from within VS.NET. IOW you will be getting an enabled source control menu, and some pretty new icons and context menus.

Over the last 24 hours I have struggled with this beast and managed to get it going. OK, lets get one with it!

Image 1

Image 2

Why use CVS?

CVS enables you to keep record of changes in source code. It allows you to see differences between code. If that and the pictures above isnt enough, then please feel free to leave.

What do I need?

You will need the latest download available from web page ( I suggest the zip version) and you will need the latest beta from the beta page.


Extract both files into the same directory and double click install.bat. You can go back to VSS mode by double clicking the switchToSourceSafe.vbs file.

NOTE: Please make sure VS.NET is closed at this stage. OK, once that has been done, we are ready to add our first solution. This is the part where Igloo is not so nice.


  • Fire up VS.NET, and open a blank solution (say CVSSol).
  • Open the solution explorer and right click your solution. Then click add Solution to Source Control. You will be presented with the CVS GUI.
  • Click create repository. Note: Leave all values default. You will get a message saying the repository has been created. (not very informative though )
  • Click create module (and again leave module name default PLEASE!). You can however change the vendor and revision tags, but be careful, the revision tag may not contain "."'s and it must start with a letter. CVS will now do it stuff. You might get a message saying not all files has been added or checked out. Dont worry about that, it seems to happen every time and does not effect the solution. Your solution has now been CVS'd. You will notice a red tick next to the solution. That means the fill is checked out (ready for editing).
  • Next we will add a project. You will notice all the files gets red ticks as well.
  • Finally, to make sure the project has been added, we do a checkin. To do this you will need to bring up the Show Pending Checkins window (doing a normal checkin at this stage does not seem to work). You can add a comment and click Check In. Again you will be presented with the CVS GUI to add the new project and again leave everything default and click create module (this will be a subdirectory of the solution's module). A message box will appear on success (again not very informative to the eye). Again, you might be prompted that some files were not added, and again its ok, dont worry or have sleepness nights
  • Finally (finally), right click the solution in the solution explorer and click undo checkout. And what do you know, all files are nicely in the repository and locked (readonly) and you will see pretty blue lock icons. This seems to be the only problem when you checkin files they seem to get auto checked out again. You can now close the project and reopen it and go crazy with CVS.


  • Create a local repository first, the repository can be easily moved to a remote repository by just copying.
  • When working with Web projects, disable FrontPage sharing mode and set solution explorer to show all files (so you can do diffs on aspx.cs files as well).
  • History is not outputted to a Dialog like VSS, rather look in the output window under Source Control.
  • Customize your SCC options to your liking, like I prefer that a checkin is done when a solution is closed.


This is just an introdution how to setup a local repository. I have setup a remote one as well , but for the life of me cannot reproduce it. However I didnt test moving the repository as created above to a different CVSROOT, and should work.

All suggestions/questions are welcome. Good luck! And have a look at the SCC options under Tools, Options. You can tune it to behave like you need it to be.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Software Developer
South Africa South Africa
No Biography provided

Comments and Discussions

GeneralMy vote of 1 Pin
Member 461648110-Jan-11 1:19
MemberMember 461648110-Jan-11 1:19 
Questionqueries about jalindi igloo CVS tool Pin
monika14926-Apr-09 21:49
Membermonika14926-Apr-09 21:49 
GeneralCan't exclude CVS directories Pin
Member 25650663-Mar-08 22:01
MemberMember 25650663-Mar-08 22:01 
QuestionHow to set up the VSplugin to connect to a CVS server Pin
edsanfor2323-Aug-07 6:56
Memberedsanfor2323-Aug-07 6:56 
QuestionSetup CVSNT Server & Visual Studio 2005 together [modified] Pin
PhanDung11-Aug-06 18:22
MemberPhanDung11-Aug-06 18:22 
AnswerRe: Setup CVSNT Server & Visual Studio 2005 together Pin
Bud Minton21-Dec-06 3:15
MemberBud Minton21-Dec-06 3:15 
GeneralMissing from the article Pin
Steven Fisher23-Jun-06 9:17
MemberSteven Fisher23-Jun-06 9:17 
GeneralRe: Missing from the article [modified] Pin
Fistboy24-Jul-06 2:53
MemberFistboy24-Jul-06 2:53 
QuestionWhy does Microsoft suck? Pin
iatehillary8-May-06 16:17
Memberiatehillary8-May-06 16:17 
AnswerRe: Why does Microsoft suck? Pin
Lex Li26-Apr-07 22:47
professionalLex Li26-Apr-07 22:47 
GeneralError adding project once solution has been added Pin
ahsha2015-Nov-05 14:35
Memberahsha2015-Nov-05 14:35 
QuestionCVSNT too slow Pin
cze559-Nov-05 21:04
Membercze559-Nov-05 21:04 
AnswerRe: CVSNT too slow Pin
Michael423-Jan-06 21:39
MemberMichael423-Jan-06 21:39 
GeneralTamTam CVS-SCC Plug-in Pin
cyberhex9026-Sep-05 6:09
Membercyberhex9026-Sep-05 6:09 
GeneralRe: TamTam CVS-SCC Plug-in Pin
Michael423-Jan-06 21:46
MemberMichael423-Jan-06 21:46 
GeneralRe: TamTam CVS-SCC Plug-in Pin
cyberhex9022-May-07 7:09
Membercyberhex9022-May-07 7:09 
GeneralUnified SCC Pin
dotProgrammer15-Mar-08 20:04
MemberdotProgrammer15-Mar-08 20:04 
GeneralRe: Unified SCC Pin
Jay198016-Sep-08 4:32
MemberJay198016-Sep-08 4:32 
GeneralWorks even with a CVS server Pin
harhau16-Aug-05 0:35
Memberharhau16-Aug-05 0:35 
GeneralThis tool is rubbish Pin
Anonymous19-Apr-05 3:09
MemberAnonymous19-Apr-05 3:09 
GeneralRe: This tool is rubbish Pin
leppie19-Apr-05 4:50
Memberleppie19-Apr-05 4:50 
GeneralHOWTO: CVS with VS.NET Pin
mnc$19-Apr-05 9:26
Membermnc$19-Apr-05 9:26 
GeneralRe: HOWTO: CVS with VS.NET Pin
mnc$19-Apr-05 9:28
Membermnc$19-Apr-05 9:28 
GeneralRe: HOWTO: CVS with VS.NET Pin
oriver11-Nov-05 15:33
Memberoriver11-Nov-05 15:33 
GeneralRe: HOWTO: CVS with VS.NET Pin
oriver11-Nov-05 15:43
Memberoriver11-Nov-05 15:43 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.