Cvs
(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, | + | '''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.