ctm.1 revision 7368
----------------------------------------------------------------------------
"THE BEER-WARE LICENSE" (Revision 42):
<joerg@freebsd.org> wrote this file. As long as you retain this notice you
can do whatever you want with this stuff. If we meet some day, and you think
this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
----------------------------------------------------------------------------

This manual page is partially obtained from Poul-Hennings CTM README
file.

CTM and ctm(1) by <phk@login.dknet.dk>

$Id$

.Dd Mar 25, 1995 .Os .Dt CTM 1 .Sh NAME .Nm ctm .Nd source code mirror program .Sh SYNOPSIS .Nm ctm .Op Fl cFpPqv .Op Fl T Ar tmpdir .Ar file Op ... .Sh DESCRIPTION .Nm Ctm was originally .Dq Cvs Through eMail , but has since changed scope to be much more general. .Nm Ctm is now meant to be the definitive way to make and apply a delta between two versions of a directory tree. There are two parts to this, making the delta and applying it. These are two entirely different things. .Ss Usage To apply a CTM delta, you pass it to the .Nm ctm command. You can pass a CTM delta on stdin, or you can give the filename as an argument. If you do the latter, you make life a lot easier for your self, since the program can accept gzip'ed files and since it will not have to make a temporary copy of your file. You can specify multiple deltas at one time, they will be proccessed one at a time. Deltas that are already applied will be ignored. The .Nm ctm command runs in a number of passes. It will process the entire input file in each pass, before commencing with the next pass. Pass 1 will validate that the input file is OK. The syntax, the data and the global MD5 checksum will be checked. If any of these fail, .Nm ctm will never be able to do anything with the file, so it will simply reject it. Pass 2 will validate that the directory tree is in the state expected by the CTM delta. This is done by looking for files and directories which should/should not exists and by checking the MD5 checksums of files. Pass 3 will actually apply the delta. .Nm Ctm will extract the file hierarchy below its working directory. Absolute filenames or filenames containing references through .Sq . and .Sq .. are explicitly prohibited as a security measure. .Ss Options l -tag -width indent -compact t Fl c Check it out, don't do anything. t Fl F Force. t Fl p Less paranoid. t Fl P Paranoid. t Fl q Tell us less. t Fl T Ar tmpdir Put temporary files under .Ar tmpdir . t Fl v Tell us more. .El .Sh FILES

a .ctm_status contains the sequence number of the last CTM delta applied. Changing or removing this file will greatly confuse .Nm ctm . .Sh EXAMPLES d -literal cd ~cvs /usr/sbin/ctm ~ctm/cvs-* .Ed .Sh DIAGNOSTICS Numerous messages, hopefully self-explaining. The .Dq noise level can be adjusted with the .Fl q and .Fl v options. .Sh SEE ALSO .Xr ctm 5

q yet to be written . .Sh HISTORY The .Nm ctm command appeared in FreeBSD 2.1. .Sh AUTHORS The CTM system has been designed and implemented by Poul-Henning Kamp .Aq phk@FreeBSD.org .