.de Id .ds Rv \\$3 .ds Dt \\$4 .. .Id $FreeBSD$ .ds r \s-1RCS\s0 .TH RCSFREEZE 1 \*(Dt GNU .SH NAME rcsfreeze \- freeze a configuration of sources checked in under RCS .SH SYNOPSIS .B rcsfreeze .RI [ "name" ] .SH DESCRIPTION .B rcsfreeze assigns a symbolic revision number to a set of \*r files that form a valid configuration. .PP The idea is to run .B rcsfreeze each time a new version is checked in. A unique symbolic name (\c .BI C_ number, where .I number is increased each time .B rcsfreeze is run) is then assigned to the most recent revision of each \*r file of the main trunk. .PP An optional .I name argument to .B rcsfreeze gives a symbolic name to the configuration. The unique identifier is still generated and is listed in the log file but it will not appear as part of the symbolic revision name in the actual \*r files. .PP A log message is requested from the user for future reference. .PP The shell script works only on all \*r files at one time. All changed files must be checked in already. Run .IR rcsclean (1) first and see whether any sources remain in the current directory. .SH FILES .TP .B RCS/.rcsfreeze.ver version number .TP .B RCS/.rcsfreeze.log log messages, most recent first .SH AUTHOR Stephan v. Bechtolsheim .SH "SEE ALSO" co(1), rcs(1), rcsclean(1), rlog(1) .SH BUGS .B rcsfreeze does not check whether any sources are checked out and modified. .PP Although both source file names and RCS file names are accepted, they are not paired as usual with RCS commands. .PP Error checking is rudimentary. .PP .B rcsfreeze is just an optional example shell script, and should not be taken too seriously. See \s-1CVS\s0 for a more complete solution.