CVS kent source tree control: Difference between revisions

From genomewiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
<pre>
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
Creates the directory hierarchy /scratch/CVSROOT/
</pre>
# edit any files here, check them in to change your local CVS behavior
Creates the directory hierarchy /scratch/CVSROOT/
# Usually no changes are required
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
creates the directory hierarchy /scratch/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
go the the above checked out source tree in the directory ./kent/
</pre>
go the the above checked out source tree in the directory ./kent/
</pre>
$ cd /scratch/kent
$ cd /scratch/kent
check what version we are importing
</pre>
check what version we are importing
<pre>
$ cat src/hg/inc/versionInfo.h
$ cat src/hg/inc/versionInfo.h
using that version number, import this release
</pre>
calling the project jksrc
using that version number, import this release
labeling it with the vendor tag JKSRC_DIST and release tag JKSRC_140
calling the project jksrc
These tags are important.  The vendor tag will be used next time you
labeling it with the vendor tag JKSRC_DIST and release tag JKSRC_140
import the source tree again.
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
No longer need the /scratch/kent/ hierarchy
</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
creates the directory hierarchy /scratch/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
check what version we are importing
</pre>
check what version we are importing
<pre>
$ cat src/hg/inc/versionInfo.h
$ cat src/hg/inc/versionInfo.h
using that version number
</pre>
same project name jksrc
using that version number
same vendor tag JKSRC_DIST and new release tag JKSRC_141
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
No longer need the /scratch/kent/ hierarchy
</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 !
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
#  examine the two outputs for conflict messages.  Resolve the conflicts
#  and check those files in.
</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
  1. 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.