ctm.1 revision 7395
----------------------------------------------------------------------------
"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. Joerg Wunsch
----------------------------------------------------------------------------

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

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

$Id: ctm.1,v 1.1 1995/03/25 18:14:24 joerg Exp $

.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 now instead it seems more fitting to call it .Dq Current Through eMail . .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 Initial trials ran during the FreeBSD 1.1.5, and many bugs and methods were hashed out. 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 . Joerg Wunsch wrote this man-page. .Aq joerg@FreeBSD.org .