should we get a new logo? :-)    

CVS Server

How do I use it?

 

 

Main
History
What is Fido?
Husky Team
CVS Server
What do I need?
Point
Node
Basic Files
husky-common
smapi
fidoconfig
Tosser
hpt
Editor
msged
Netmail trackers
cfroute
lxtrack
ffma
Nodelist tools
promknl
nltools
Tickers
htick
protick
Gateway
progate
Mailers
pkt2mail
mail2pkt
diskpoll
Tools
sqpack
mpost
gff
fidostat
huskypnt

What is CVS?

CVS is a source code repository maintainance system, which allows a group of developers located at distant places to work at the same source code over the internet. This sounds complicated at first, but using CVS is really easy, even if you have never used it before. If you want to contribute to the Husky project (and be it only for making some bug fixes from time to time), we suggest you install CVS and get a login to our CVS server.

In the following, you can see a very little introduction how CVS works and how you should and can use it, once you have gotten your account. If you want to know CVS in more detail, please also read the documentation (info-pages) of CVS. They are very instructive.

  • Note: This description only covers the command line version of CVS. However, if you are using a GUI version, the steps are the same, but there might be some differences and problems.
  • All CVS commands require a connection to the CVS server.
  • Get CVS for your platform and install it. Please be sure to use at least version 1.10.
    Do not use CVS under different platforms on the same work source tree.
    Do not use one working directory for more then one CVS connection.
  • Recommended settings for CVS (add to .cvsrc in your home directory):
      cvs -z3
      checkout -P
      update -P
      diff -c
  • Login into the CVS Server:
    • If you want to use the CVS server with write access, send a netmail to 2:2476/418 or an email to Tobias Ernst with your real name and fido- or othernet-aka. You will receive an ID (normally <firstname>.<lastname>) and a password.
    • Set the environment variable CVSROOT to :pserver:<ID>@cvs.physcip.uni-stuttgart.de:/cvs2
    • Type cvs login to "login" the CVS Server. CVS will ask you for a password that will be checked and stored if it is correct.
      Note: Login here does not mean that you're holding a permanent connection to the CVS server. A new connection will be established everytime when required. All login-information will be stored in a local file called .cvspass in your home directory (and deleted after logout), some additional information will be stored in a directory CVS under the working directory.
  • Get your work source tree:
    • Type cvs co . to checkout the latest version of the husky source tree of all modules on the cvs-server. A new directory for any module will be created in the current directory containing the sources.
    • Type cvs co <module> [...] for one or more modules. To get a list of all mudules type: cvs history .
  • Do your modifications:
    • Please group them together to match one log message. Do not do thousands of completely different modifications that do not depend on each other. As CVS saves the log message you enter with every file you have modified it is not very clever to do a long list of changes.
      I.e. if you want to implement a new feature and fix a bug in an already existing module that is independent to the new feature, first fix the bug and commit the changes (see below) and then implement the new feature.
    • Make sure your sources are compileable!
  • To see what you or others have changed:
    • If you want to review the changes you have done type cvs diff . This will create a diff file. If you are using the above settings it will create a context diff which is IMHO easier to read.
    • You can also use cvs diff <file> [...] to only see the changes of the file(s) you have specified.
  • Update your work source tree:
    • Type cvs up in the root directory of your work source tree to update it. This is only necessary when other developers committed changes.
    • If there were conflicts, you will be notified by CVS and you have to resolve them by hand. CVS will save the two conflicting parts and mark them for you.
  • Commit your changes: (only non-anonymous users)
    • Type cvs ci [<file> [...]] to commit your changes. If you use cvs ci in the root directory of your work source tree, all modified files will be committed.
    • You will be asked for a log entry. Please read the notes in the template and enter a detailed description. This description will also be used in the changes.log.
      Note: if you are using a GUI version of CVS that does not use "CVS:" to mark comments in a template, you must remove all lines starting with "CVS:" by hand.
    • If you forget to update and another developer committed changes to the same file, your commit will be rejected.

Thanks to Michael Reinsch fom BTXE developers team for the original.

Last update: 08/04/2000