Hosting documentation/Concurrent Versions System

From Bioinformatics.Org Wiki

(Difference between revisions)
Jump to: navigation, search
m
m
Line 1: Line 1:
-
Anonymous CVS access through pserver
+
==Anonymous CVS access through pserver==
Anonymous CVS access uses CVS pserver and does not require SSH.
Anonymous CVS access uses CVS pserver and does not require SSH.
Line 11: Line 11:
  $ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot checkout modulename
  $ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot checkout modulename
-
CVS cleints
+
==CVS cleints==
-
If you are using a Unix-variant, CVS clients are easy to find or may already be installed on your system. Simply type cvs to see if you have one.
+
If you are using a Unix-variant, CVS clients are easy to find or may already be installed on your system. Simply type '''cvs''' to see if you have one.
For Windows, TortoiseCVS is one of the better clients and highly recommended.
For Windows, TortoiseCVS is one of the better clients and highly recommended.
Line 19: Line 19:
Plus, Bioinformatics.Org has a Web interface for browsing and downloading source code from CVS.
Plus, Bioinformatics.Org has a Web interface for browsing and downloading source code from CVS.
-
Developer access
+
==Developer access==
For all developer (read/write) access, you will be using SSH (Secure Shell). The SSH (2.x or better) client must be available to your local machine. And the local environment variable CVS_RSH must be set to the SSH command.
For all developer (read/write) access, you will be using SSH (Secure Shell). The SSH (2.x or better) client must be available to your local machine. And the local environment variable CVS_RSH must be set to the SSH command.
Line 35: Line 35:
  $ setenv CVSROOT ':ext:loginname@bioinformatics.org:/cvsroot'
  $ setenv CVSROOT ':ext:loginname@bioinformatics.org:/cvsroot'
-
Note that the login command will not work with the SSH method. It is for the pserver method alone, and the pserver should only be used for anonymous access. You will need to type in your password for each command, unless you use ssh-agent with SSH keys. SecurityFocus has articles on generating SSH keys and setting up ssh-agent.
+
Note that the '''login''' command will not work with the SSH method. It is for the pserver method alone, and the pserver should only be used for anonymous access. You will need to type in your password for each command, unless you use '''ssh-agent''' with SSH keys. SecurityFocus has articles on generating SSH keys and setting up ssh-agent.
If you get "permission denied" errors with no prompt for a password, you either do not have CVS_RSH set properly or SSH is not available on your system. Fix this before suspecting a password problem.
If you get "permission denied" errors with no prompt for a password, you either do not have CVS_RSH set properly or SSH is not available on your system. Fix this before suspecting a password problem.
-
Importing source code into the main CVS repository as a developer
+
==Importing source code into the main CVS repository as a developer==
You may choose any place on the server (to which you have access) to create a CVS repository and import your code. However, if you want the public to see and download your code, it has to be in the main repository, cvsroot.
You may choose any place on the server (to which you have access) to create a CVS repository and import your code. However, if you want the public to see and download your code, it has to be in the main repository, cvsroot.
Line 52: Line 52:
  $ cvs import -m 'Initial import.' bioworks MAIN HEAD
  $ cvs import -m 'Initial import.' bioworks MAIN HEAD
-
Initial checkout and other commands as a developer
+
==Initial checkout and other commands as a developer==
* Change to the directory where you want the module to be placed. (This has to be a different directory from the one you used to import the module, since the module will be downloaded as a new directory with some version control files in it.) Then, type the following, making the necessary obvious substitution for the modulename:
* Change to the directory where you want the module to be placed. (This has to be a different directory from the one you used to import the module, since the module will be downloaded as a new directory with some version control files in it.) Then, type the following, making the necessary obvious substitution for the modulename:
Line 65: Line 65:
  $ cvs commit
  $ cvs commit
-
Developer access without setting the CVSROOT variable
+
==Developer access without setting the CVSROOT variable==
-
* You can forego setting the CVSROOT variable simply by specifying the location of the modules with the -d option. This only has to be done for the commands such as import and checkout. Afterward, the -d flag need not be included. Here is an example of a module checkout:
+
* You can forego setting the CVSROOT variable simply by specifying the location of the modules with the -d option. This only has to be done for the commands such as '''import''' and '''checkout'''. Afterward, the -d flag need not be included. Here is an example of a module checkout:
  $ cvs -dloginname@bioinformatics.org:/cvsroot checkout modulename
  $ cvs -dloginname@bioinformatics.org:/cvsroot checkout modulename
-
Additional references
+
==Additional references==
* Open Source Development with CVS (a free book)
* Open Source Development with CVS (a free book)
* A tutorial on CVS
* A tutorial on CVS

Revision as of 22:54, 24 March 2008

Contents

Anonymous CVS access through pserver

Anonymous CVS access uses CVS pserver and does not require SSH.

$ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot login
$ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot checkout modulename

CVS cleints

If you are using a Unix-variant, CVS clients are easy to find or may already be installed on your system. Simply type cvs to see if you have one.

For Windows, TortoiseCVS is one of the better clients and highly recommended.

Plus, Bioinformatics.Org has a Web interface for browsing and downloading source code from CVS.

Developer access

For all developer (read/write) access, you will be using SSH (Secure Shell). The SSH (2.x or better) client must be available to your local machine. And the local environment variable CVS_RSH must be set to the SSH command.

You may also want to set the CVSROOT variable, which tells CVS where to look for the modules. See below for instructions on using CVS without setting the CVSROOT variable.

These variables are set on most Linux (bash) systems by typing

$ export CVS_RSH='ssh'
$ export CVSROOT=':ext:loginname@bioinformatics.org:/cvsroot'

For most UNIX (csh) systems, use

$ setenv CVS_RSH 'ssh'
$ setenv CVSROOT ':ext:loginname@bioinformatics.org:/cvsroot'

Note that the login command will not work with the SSH method. It is for the pserver method alone, and the pserver should only be used for anonymous access. You will need to type in your password for each command, unless you use ssh-agent with SSH keys. SecurityFocus has articles on generating SSH keys and setting up ssh-agent.

If you get "permission denied" errors with no prompt for a password, you either do not have CVS_RSH set properly or SSH is not available on your system. Fix this before suspecting a password problem.

Importing source code into the main CVS repository as a developer

You may choose any place on the server (to which you have access) to create a CVS repository and import your code. However, if you want the public to see and download your code, it has to be in the main repository, cvsroot.

$ cvs import -m 'message about import' modulename branchname tagname
     If you are importing a new module named "bioworks", for example, you would type the following:
$ cvs import -m 'Initial import.' bioworks MAIN HEAD

Initial checkout and other commands as a developer

$ cvs checkout modulename
$ cvs update
$ cvs add filename
$ cvs delete filename
$ cvs commit

Developer access without setting the CVSROOT variable

$ cvs -dloginname@bioinformatics.org:/cvsroot checkout modulename

Additional references

Personal tools
Namespaces
Variants
Actions
wiki navigation
Toolbox