pavement

Cvs

From FreeBSDwiki
(Difference between revisions)
Jump to: navigation, search
(copied sections from Cvsup, and Updating the source tree (attribution). edits made too)
Line 1: Line 1:
'''cvs''' stands for Concurrent Versions System. As the name implies, it is a version control system. ''[[csup]]'', which comes with the base system, is useful to update ports from cvs repositories. [[cvsup]] may still be required for other mirroring tasks that don't apply to ports or updating sources.
+
'''cvs''' stands for Concurrent Versions System. As the name implies, it is a version control system.
 +
 
 +
''[[csup]]'', which comes with the base system, was useful to update ports from cvs repositories. [[cvsup]], which required heavy dependencies, may still be used for other mirroring tasks that don't apply to ports or updating sources. FreeBSD repository updates have been replaced by [[subversion]], or [[ctm]].
 +
 
 +
You can optionally install [[cvsup]] (or ''cvsup-without-gui''). The cvsup program is the same as cvsup-without-gui if you do not have the X system installed, but many people prefer the non-gui version, as the ''cvsup'' version defaults to working in an X11 window (overridden with the -g flag).
 +
 
 +
== Historical usage of cvs to update the source tree ==
 +
Here are examples of release tags that would be chosen, [[FreeBSD Release Branches]].
 +
 
 +
===Configuring your supfile===
 +
 
 +
Csup uses the same supfile configuration as cvsup, and many of the commands for cvsup also apply to csup.
 +
 
 +
To use cvs, you should have a file named '''standard-supfile''' or something similer in '''/usr/share/examples/cvsup'''. Copy it somewhere else, such as into /root, and open the copy with a text editor. The following is the file that I use:
 +
*default host=cvsup4.jp.FreeBSD.org  ''pick a nearby server from [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html#CVSUP-MIRRORS]''
 +
*default base=/var/db
 +
*default prefix=/usr                  ''source will be placed in /usr/src''
 +
*default release=cvs tag=RELENG_6    ''Replace RELENG_6 with your cvsup tag''
 +
*default delete use-rel-suffix
 +
*default compress
 +
src-all
 +
 
 +
This is basically a default supfile, with the host and release cvstag changed.
 +
 
 +
Save and close this file
 +
 
 +
===Updating your source using the file===
 +
Assuming you have the supfile in your root directory named standard-supfile, run as root:
 +
''cd /root''
 +
''cvsup standard-supfile''
 +
or
 +
''cd /root''
 +
''cvsup -g standard-supfile''
 +
The first time you run this command, it will probably take a significant amount of time. It will go out to the server you picked in the supfile, and attempt to update all of the source code needed to update FreeBSD to whatever version you have picked. Handbook references for gobs of details: [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html Other methods of getting source],  [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html Details and optional flags to cvsup].
 +
 
 +
In a perfect world, that will always work. The only times when it wont are when you don't have connectivity or the server that you're cvsup-ing against is not allowing connections. The ''-g'' switch just makes sure that the GUI stuff in the regular CVSup program doesn't run, which many users prefer.
  
 
For more information and the full documentation visit the [[http://cvshome.org offical website]].
 
For more information and the full documentation visit the [[http://cvshome.org offical website]].
 +
 +
==cvs replacements==
 +
''[[portsnap]]'', and [[freebsd-update]], which come with the base system, and [[subversion]] (''svn'') are replacements for cvs' FreeBSD update functions. ''csup'' was a direct replacement for cvsup's ability to download source files and ports. ''freebsd-update'' can update release versions of this base system. Portsnap is a good replacement for updating ports. Subversion, from the devel category, or similar programs are options to check out other mirror repositories. For more information on subversion see: [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/svn.html FreeBSD Handbook: Using Subversion] which includes links to [http://subversion.apache.org/docs/ Apache Subversion Documentation], and the free online book [http://svnbook.red-bean.com/ Version Control with Subversion].
  
 
[[Category : System Commands]]
 
[[Category : System Commands]]

Revision as of 13:21, 20 December 2014

cvs stands for Concurrent Versions System. As the name implies, it is a version control system.

csup, which comes with the base system, was useful to update ports from cvs repositories. cvsup, which required heavy dependencies, may still be used for other mirroring tasks that don't apply to ports or updating sources. FreeBSD repository updates have been replaced by subversion, or ctm.

You can optionally install cvsup (or cvsup-without-gui). The cvsup program is the same as cvsup-without-gui if you do not have the X system installed, but many people prefer the non-gui version, as the cvsup version defaults to working in an X11 window (overridden with the -g flag).

Contents

Historical usage of cvs to update the source tree

Here are examples of release tags that would be chosen, FreeBSD Release Branches.

Configuring your supfile

Csup uses the same supfile configuration as cvsup, and many of the commands for cvsup also apply to csup.

To use cvs, you should have a file named standard-supfile or something similer in /usr/share/examples/cvsup. Copy it somewhere else, such as into /root, and open the copy with a text editor. The following is the file that I use:

*default host=cvsup4.jp.FreeBSD.org   pick a nearby server from [1]
*default base=/var/db
*default prefix=/usr                  source will be placed in /usr/src
*default release=cvs tag=RELENG_6     Replace RELENG_6 with your cvsup tag
*default delete use-rel-suffix
*default compress
src-all

This is basically a default supfile, with the host and release cvstag changed.

Save and close this file

Updating your source using the file

Assuming you have the supfile in your root directory named standard-supfile, run as root:

cd /root
cvsup standard-supfile

or

cd /root
cvsup -g standard-supfile

The first time you run this command, it will probably take a significant amount of time. It will go out to the server you picked in the supfile, and attempt to update all of the source code needed to update FreeBSD to whatever version you have picked. Handbook references for gobs of details: Other methods of getting source, Details and optional flags to cvsup.

In a perfect world, that will always work. The only times when it wont are when you don't have connectivity or the server that you're cvsup-ing against is not allowing connections. The -g switch just makes sure that the GUI stuff in the regular CVSup program doesn't run, which many users prefer.

For more information and the full documentation visit the [offical website].

cvs replacements

portsnap, and freebsd-update, which come with the base system, and subversion (svn) are replacements for cvs' FreeBSD update functions. csup was a direct replacement for cvsup's ability to download source files and ports. freebsd-update can update release versions of this base system. Portsnap is a good replacement for updating ports. Subversion, from the devel category, or similar programs are options to check out other mirror repositories. For more information on subversion see: FreeBSD Handbook: Using Subversion which includes links to Apache Subversion Documentation, and the free online book Version Control with Subversion.

Personal tools