CVS kent source tree control: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
Starting an initial CVS local repository. The location /scratch/cvsroot/ | Starting an initial CVS local repository. The location /scratch/cvsroot/ | ||
is merely an example here. You will want this in some location that is | is merely an example here. You will want this in some location that is | ||
backed up. It will be your master copy of your source tree. | backed up. It will be your master copy of your source tree. | ||
<pre> | |||
$ CVSROOT=/scratch/cvsroot | $ CVSROOT=/scratch/cvsroot | ||
$ export CVSROOT | $ export CVSROOT | ||
$ cvs -d $CVSROOT init | $ cvs -d $CVSROOT init | ||
</pre> | |||
If you want to modify any characteristics of your cvs system, | If you want to modify any characteristics of your cvs system, | ||
Line 14: | Line 13: | ||
... somewhere else, for example /scratch ... | ... somewhere else, for example /scratch ... | ||
<pre> | |||
$ cd /scratch | $ cd /scratch | ||
$ cvs co CVSROOT | $ cvs co CVSROOT | ||
</pre> | |||
Creates the directory hierarchy /scratch/CVSROOT/ | |||
edit any files here, check them in to change your local CVS behavior | |||
Usually no changes are required | |||
Importing the kent source tree: | Importing the kent source tree: | ||
Fetch the kent source tree without expanding the ID keywords, note the -kk argument | Fetch the kent source tree without expanding the ID keywords, note the -kk argument | ||
<pre> | |||
$ CVSROOT=:pserver:anonymous@genome-test.cse.ucsc.edu:/cbse | $ CVSROOT=:pserver:anonymous@genome-test.cse.ucsc.edu:/cbse | ||
$ export CVSROOT | $ export CVSROOT | ||
Line 30: | Line 31: | ||
$ cd /scratch | $ cd /scratch | ||
$ cvs co -kk -rbeta kent | $ cvs co -kk -rbeta kent | ||
</pre> | |||
creates the directory hierarchy /scratch/kent/ | |||
Back to your local CVSROOT | Back to your local CVSROOT | ||
<pre> | |||
$ CVSROOT=/scratch/cvsroot | $ CVSROOT=/scratch/cvsroot | ||
$ export CVSROOT | $ export CVSROOT | ||
</pre> | |||
go the the above checked out source tree in the directory ./kent/ | |||
</pre> | |||
$ cd /scratch/kent | $ cd /scratch/kent | ||
</pre> | |||
check what version we are importing | |||
<pre> | |||
$ cat src/hg/inc/versionInfo.h | $ cat src/hg/inc/versionInfo.h | ||
</pre> | |||
using that version number, import this release | |||
calling the project jksrc | |||
labeling it with the vendor tag JKSRC_DIST and release tag JKSRC_140 | |||
These tags are important. The vendor tag will be used next time you | |||
import the source tree again. | |||
<pre> | |||
$ cvs import -m "Import of jksrc v140" jksrc JKSRC_DIST JKSRC_140 | $ cvs import -m "Import of jksrc v140" jksrc JKSRC_DIST JKSRC_140 | ||
</pre> | |||
No longer need the /scratch/kent/ hierarchy | |||
<pre> | |||
$ rm -fr /scratch/kent | $ rm -fr /scratch/kent | ||
</pre> | |||
Now you can check out a local copy of the jksrc tree | Now you can check out a local copy of the jksrc tree | ||
... somewhere else, for example /scratch ... | ... somewhere else, for example /scratch ... | ||
<pre> | |||
$ cd /scratch | $ cd /scratch | ||
$ cvs co jksrc | $ cvs co jksrc | ||
</pre> | |||
creates the directory hierarchy /scratch/jksrc/ | |||
This source tree is your local copy. Edit as you desire. Check in your | This source tree is your local copy. Edit as you desire. Check in your | ||
Line 63: | Line 76: | ||
Fetch the kent source tree without expanding the ID keywords: | Fetch the kent source tree without expanding the ID keywords: | ||
<pre> | |||
$ CVSROOT=:pserver:anonymous@genome-test.cse.ucsc.edu:/cbse | $ CVSROOT=:pserver:anonymous@genome-test.cse.ucsc.edu:/cbse | ||
$ export CVSROOT | $ export CVSROOT | ||
$ cvs login | $ cvs login | ||
password: genome | password: genome | ||
$ cd /scratch | $ cd /scratch | ||
$ cvs co -kk -rbeta kent | $ cvs co -kk -rbeta kent | ||
</pre> | |||
# creates the directory hierarchy /scratch/kent/ | # creates the directory hierarchy /scratch/kent/ | ||
Back to the local CVSROOT | Back to the local CVSROOT | ||
<pre> | |||
$ CVSROOT=/scratch/cvsroot | $ CVSROOT=/scratch/cvsroot | ||
$ export CVSROOT | $ export CVSROOT | ||
$ cd /scratch/kent | $ cd /scratch/kent | ||
</pre> | |||
check what version we are importing | |||
<pre> | |||
$ cat src/hg/inc/versionInfo.h | $ cat src/hg/inc/versionInfo.h | ||
</pre> | |||
using that version number | |||
same project name jksrc | |||
same vendor tag JKSRC_DIST and new release tag JKSRC_141 | |||
<pre> | |||
$ cvs import -m "Import of jksrc v141" jksrc JKSRC_DIST JKSRC_141 | $ cvs import -m "Import of jksrc v141" jksrc JKSRC_DIST JKSRC_141 | ||
</pre> | |||
No longer need the /scratch/kent/ hierarchy | |||
<pre> | |||
$ rm -fr /scratch/kent | $ rm -fr /scratch/kent | ||
</pre> | |||
update your existing source tree ! AND HANDLE CONFLICTS as usual ! | |||
... in your local working copy of the source tree | ... in your local working copy of the source tree | ||
<pre> | |||
$ cd /scratch/jksrc | $ cd /scratch/jksrc | ||
$ cvs -q up > cvsupdate.stdout 2> cvsupdate.stderr | $ cvs -q up > cvsupdate.stdout 2> cvsupdate.stderr | ||
</pre> | </pre> | ||
examine the two outputs for conflict messages. Resolve the conflicts | |||
and check those files in. | |||
[[Category:Browser Development]] | [[Category:Browser Development]] |
Revision as of 20:48, 17 August 2006
Starting an initial CVS local repository. The location /scratch/cvsroot/ is merely an example here. You will want this in some location that is backed up. It will be your master copy of your source tree.
$ CVSROOT=/scratch/cvsroot $ export CVSROOT $ cvs -d $CVSROOT init
If you want to modify any characteristics of your cvs system, do a checkout of CVSROOT project and edit the configuration files. Check them in. In particular, see the file: config
... somewhere else, for example /scratch ...
$ cd /scratch $ cvs co CVSROOT
Creates the directory hierarchy /scratch/CVSROOT/ edit any files here, check them in to change your local CVS behavior Usually no changes are required
Importing the kent source tree:
Fetch the kent source tree without expanding the ID keywords, note the -kk argument
$ CVSROOT=:pserver:anonymous@genome-test.cse.ucsc.edu:/cbse $ export CVSROOT $ cvs login password: genome $ cd /scratch $ cvs co -kk -rbeta kent
creates the directory hierarchy /scratch/kent/
Back to your local CVSROOT
$ CVSROOT=/scratch/cvsroot $ export CVSROOT
go the the above checked out source tree in the directory ./kent/
$ cd /scratch/kent
check what version we are importing
$ cat src/hg/inc/versionInfo.h
using that version number, import this release calling the project jksrc labeling it with the vendor tag JKSRC_DIST and release tag JKSRC_140 These tags are important. The vendor tag will be used next time you import the source tree again.
$ cvs import -m "Import of jksrc v140" jksrc JKSRC_DIST JKSRC_140
No longer need the /scratch/kent/ hierarchy
$ rm -fr /scratch/kent
Now you can check out a local copy of the jksrc tree
... somewhere else, for example /scratch ...
$ cd /scratch $ cvs co jksrc
creates the directory hierarchy /scratch/jksrc/
This source tree is your local copy. Edit as you desire. Check in your own changes. Build your sources here.
The next time you want a kent source update, do the same procedure as above for the import, using the same vendor tag but with a new release tag.
Fetch the kent source tree without expanding the ID keywords:
$ CVSROOT=:pserver:anonymous@genome-test.cse.ucsc.edu:/cbse $ export CVSROOT $ cvs login password: genome $ cd /scratch $ cvs co -kk -rbeta kent
- creates the directory hierarchy /scratch/kent/
Back to the local CVSROOT
$ CVSROOT=/scratch/cvsroot $ export CVSROOT $ cd /scratch/kent
check what version we are importing
$ cat src/hg/inc/versionInfo.h
using that version number same project name jksrc same vendor tag JKSRC_DIST and new release tag JKSRC_141
$ cvs import -m "Import of jksrc v141" jksrc JKSRC_DIST JKSRC_141
No longer need the /scratch/kent/ hierarchy
$ rm -fr /scratch/kent
update your existing source tree ! AND HANDLE CONFLICTS as usual ! ... in your local working copy of the source tree
$ cd /scratch/jksrc $ cvs -q up > cvsupdate.stdout 2> cvsupdate.stderr
examine the two outputs for conflict messages. Resolve the conflicts and check those files in.