Getting a project under version control is called importing in CVS terminology. As the name implies, you should have something for the CVS server to import before thinking version control.
CVS lacks good support for restructuring a project file hiearchy, so you save yourself a lot of trouble if you spend some time planning before importing a new module.
The basis for the import operation is a "clean" directory structure. By clean we mean that files which need no versioning (compiler generated files, backups etc.) are removed. This is particularly important if your project has been going on for a while. You may have several files in your hierarchy that you do not want to put under version control, but that you want to keep where they are anyway. In that case you have to move them out before importing, and move them back afterwards.
Be aware that CVS treats empty directories as non-existent. If you want to add a directory in which you have neither files nor subdirectories, you will have to create a dummy file in it. We suggest that you create a file named README.txt, which contains a short description of what this directory is for.
Once you have a directory structure that contains only files you want to have in the repository, do the following to import the module using WinCvs:
1. Click somewhere in the Module or Explore pane to the left, so that one item is selected.
2. Choose the Create -> Import module menu.
3. In the file dialog that pops up, select the top level directory of the project you want to import by making its folder icon open (and its name highlighted).
4. WinCvs will now try to identify any binary files that you may have in your directory tree. If a filter window shows up, make sure the files mentioned have the correct text/binary setting. You may also receive some warnings about files containing escape characters. You can safely ignore this.
5. In the Import settings dialog, type a module name. This will be the name of the top level directory for the module when people check it out.
6. Type your name, your company name or your project name (no spaces) in the Vendor tag field.
7. Type start in the Release tag field.
8. If you want to give an initial description of the module, please do so in the Enter the log message field.
9. Press the OK button.
WinCvs will now import your entire directory hierarchy to the CVS server. Note that nothing will be changed in your local files during the import operation. This means that your local copy will not be under version control after the import. Before starting to work on your version controlled sources, you should do the following:
1. Move your original hierarchy away, eg. by renaming the top level directory of the project to *.old using Windows' file explorer, or by deleting it entirely.
2. Check out a copy of the new module by following the instructions in the section Getting a New Module from CVS.
3. Optionally copy back the "unimportant" files that you moved out.
4. Select the View -> Browse location -> Change menu and point the browser to where you just checked out your new module. Then go ahead and select the View -> Browse location -> Save settings menu to be able to select it later on when you work on this project (ideal when you work on several projects at the same time).