Hosting documentation/Concurrent Versions System

From Bioinformatics.Org Wiki

(Difference between revisions)
Jump to: navigation, search
m
m (Importing source code into the main CVS repository as a developer)
(15 intermediate revisions not shown)
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.
-
* First, log in by typing the following. When prompted for the password, just press Enter.
+
On your local computer, type the following. When prompted for the password, just press Enter.
  $ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot login
  $ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot login
-
* Then, type the following, making the necessary obvious substitution for the modulename. Afterward, the -d flag need not be included.
+
And then type the following, making the necessary obvious substitution for the modulename. Afterward, the -d flag need not be included.
   
   
-
  $ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot checkout modulename
+
  $ cvs -d:pserver:anonymous@bioinformatics.org:/cvsroot checkout ''modulename''
-
CVS cleints
+
==CVS clients==
-
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, [http://www.tortoisecvs.org/ 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.
+
Plus, Bioinformatics.Org has a [http://www.bioinformatics.org/cgi-bin/cvsweb.cgi/ 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 ([http://www.ssh.com/ 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.
+
You may also want to set the CVSROOT variable on your local computer. This tells CVS where to look for the modules. [http://wiki.bioinformatics.org/CVS#Developer_access_without_setting_the_CVSROOT_variable See below] for instructions on using CVS without setting the CVSROOT variable.
-
These variables are set on most Linux (bash) systems by typing
+
These variables are set on most Linux (bash) systems by typing:
-
  $ export CVS_RSH='ssh'
+
  $ export CVS_RSH="ssh"
-
  $ export CVSROOT=':ext:loginname@bioinformatics.org:/cvsroot'
+
  $ export CVSROOT=":ext:''username''@bioinformatics.org:/cvsroot"
-
For most UNIX (csh) systems, use
+
For most UNIX (csh) systems, use:
   
   
-
  $ setenv CVS_RSH 'ssh'
+
  $ setenv CVS_RSH "ssh"
-
  $ setenv CVSROOT ':ext:loginname@bioinformatics.org:/cvsroot'
+
  $ setenv CVSROOT ":ext:''username''@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 [http://www.securityfocus.com/infocus/1810 generating SSH keys] and setting up [http://www.securityfocus.com/infocus/1812 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.
-
* On your local machine, change to the directory whose files (and subdirectories) you want to import. Everything now in the current directory and all subdirectories will be imported into the module.
+
'''Important''': 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 to enable anonymous downloads and access via the [http://www.bioinformatics.org/cgi-bin/cvsweb.cgi/ Web interface], the repository has to be in the directory /cvsroot.
-
* Type the following, where modulename is the name of the new CVS root level module:
+
-
$ cvs import -m 'message about import' modulename branchname tagname
+
On your local computer, change to the directory whose files (and subdirectories) you want to import. Everything now in the current directory and all subdirectories will be imported into the module.
-
      If you are importing a new module named "bioworks", for example, you would type the following:
+
Type the following, where modulename is the name of the new CVS root level module:
 +
 
 +
$ 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
  $ 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:
+
On your local computer, 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.) And then type the following, making the necessary obvious substitution for the modulename:
-
  $ cvs checkout modulename
+
  $ cvs checkout ''modulename''
-
* After the initial checkout, you can change into this directory and execute other CVS commands. For example
+
After the initial checkout, you can change into this directory and execute other CVS commands. For example
  $ cvs update
  $ cvs update
-
  $ cvs add filename
+
  $ cvs add ''filename''
-
  $ cvs delete filename
+
  $ cvs delete ''filename''
  $ 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:
 +
 
 +
$ cvs -d''username''@bioinformatics.org:/cvsroot checkout ''modulename''
-
* 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:
+
==See also==
-
$ cvs -dloginname@bioinformatics.org:/cvsroot checkout modulename
+
* [[Hosting documentation/Subversion|Subversion]]
 +
* [[Hosting documentation/Git|Git]]
-
Additional references
+
==External links==
-
* Open Source Development with CVS (a free book)
+
* [http://cvsbook.red-bean.com/ Open Source Development with CVS] (a free book)
-
* A tutorial on CVS
+
* [http://www.linux.ie/articles/tutorials/cvs.php A tutorial on CVS]

Revision as of 07:45, 2 May 2013

Contents

Anonymous CVS access through pserver

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

On your local computer, type the following. When prompted for the password, just press Enter.

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

And then type the following, making the necessary obvious substitution for the modulename. Afterward, the -d flag need not be included.

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

CVS clients

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 on your local computer. This 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:username@bioinformatics.org:/cvsroot"

For most UNIX (csh) systems, use:

$ setenv CVS_RSH "ssh"
$ setenv CVSROOT ":ext:username@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.

Important: 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 to enable anonymous downloads and access via the Web interface, the repository has to be in the directory /cvsroot.

On your local computer, change to the directory whose files (and subdirectories) you want to import. Everything now in the current directory and all subdirectories will be imported into the module.

Type the following, where modulename is the name of the new CVS root level module:

$ 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

On your local computer, 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.) And then type the following, making the necessary obvious substitution for the modulename:

$ cvs checkout modulename

After the initial checkout, you can change into this directory and execute other CVS commands. For example

$ cvs update
$ cvs add filename
$ cvs delete filename
$ cvs commit

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:

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

See also

External links

Personal tools
Namespaces
Variants
Actions
wiki navigation
Toolbox