原作: Poul-Henning Kamp
<phk@FreeBSD.ORG>
. 更新: 16-Mar-1995.
訳: 花井浩之
<hanai@FreeBSD.ORG>
5 November 1996.
CTM
はリモートのディレクトリツリーを中央のツリーに同期させるための
手段です. これはFreeBSDのソースツリーの配布を行なうために開発されまし
たが, 時が経つにつれて別の目的にも有用であることがわかるかも
しれません. デルタを作り出す処理に関するドキュメントは現在ほとんど
ありません。従って, もしあなたがCTM
を他のことに使いたいなら
Poul-Henning Kamp
<phk@FreeBSD.ORG>
にさらなる情報を問い合わせてください.
CTM
を使うの?CTM
を使うことにより``FreeBSD-current''のローカルコピーを得ることが
できます. もしあなたがFreeBSDのアクティブな開発者であるにもかかわらず
お粗末なTCP/IP接続しか持っていなかったり, またはTCP/IP接続が
行なえないとしたら, CTM
はそんなあなたのために作られたのです.
あなたは一日あたり四つまでのデルタを転送する必要があるでしょう
(またはそれを自動的にメールで受けとることができます).
デルタのサイズは常にできるだけ小さく保たれています.
大抵の場合5KBよりも小さく,
たまに(10回に1回程度)10-50KBになり, ときおり100KBかもっと大きくなる
でしょう.
``current''のソースを追いかけるのに, 様々な注意に気を付けておく必要もあるでしょう. そのためには 最新のカレントを追いかけるを読むことを お勧めします.
CTM
を使うには何が必要?二つのものが必要でしょう: ``CTM
'' プログラムとそれに与える
(``current''レベルを得るための)最初のデルタです.
CTM
プログラムはバージョン2.0のリリース以来FreeBSDの一部にな
りました. もしソースのコピーを持っているなら
/usr/src/usr.sbin/
にあります.CTM
もしFreeBSDの2.0以前のバージョンなら, 最新のCTM
のソースを直接
ftp://ftp.FreeBSD.ORG/pub/FreeBSD/FreeBSD-current/src/usr.sbin/ctm
から入手できます.
CTM
に与える「デルタ」は二つの方法, FTPまたはe-mail, で得ること
ができます.
もしインターネットにFTPアクセスできるなら, 次のFTPサイト:
ftp://ftp.FreeBSD.ORG/pub/FreeBSD/CTM
または、その
ミラーサイトがCTM
へのアクセスをサポートします.
適切なディレクトリにFTPしてREADME
ファイルを入手し, そこから
スタートしてください.
もし電子メールにしかアクセスできない もしくはFTPの使用が制限され ているなら, e-mailでデルタを入手したいと思うかもしれません.
メーリングリスト``ctm-src-cur''に参加するために<majordomo@FreeBSD.ORG>
へメールを送ってください. (もしmajordomoを使って参加する方法を知らない
のであれば, 最初に``help''という語を含むメッセージを送ってください.
- 使い方の説明が送られてくるでしょう.)
メールでCTM
による更新ファイルを受け取り始めると, 中身を取り出して使用
するためにctm_rmail
プログラムを使うかもしれません. それを完全
に自動で行ないたいなら, /etc/aliases
からctm_rmail
プロ
グラムを直接使うこともできます.
さらに詳しいことはctm_rmail
manページを御覧ください.
注: CTM
デルタを得るためにどの方法を使うのであっても,
ctm-announce@FreeBSD.ORG
メーリングリストに参加するべきです.
このメーリングリストは将来的にはCTM
システムの操作に関する
アナウンスがポストされる唯一の場になるでしょう.
メーリングリストに加わるためには``subscribe ctm-announce
''
と書いた一行だけのメールを <majordomo@FreeBSD.ORG>
へ送ってください.
CTM
を使い始めるCTM
デルタを使い始めるためには, 特別な「ベース」デルタを
入手する必要があるでしょう. これは以降作られる全てのデルタの
出発点となるものです.
ベースデルタは数字に付け加えられた``A
''によって認識することが
出来ます(例えば, src-cur.0341A.gz
).
規則としてベースデルタは100デルタ毎に作られるので, 次のベースデルタ
はsrc-cur.0400A.gz
となるでしょう. ところで, ベースデルタは
とても大きいです! 25MBから30 MB のgzip
されたデータ, というのが
ベースデルタとしては普通です.
もし2.0-RELEASEのsrcdist
を持っているのなら, 代わりに
src-cur.0372R20.gz
ファイルを見つけることができるでしょう. これは
たったの4MBしかなく, これにより2.0-RELEASEのソースからcurrentを
得ることができます.
一度スタートするためのベースデルタを得ると, それに続く多数の 全てのデルタも必要になるでしょう.
CTM
を日常で使うデルタを適用するためには, 単に
cd /where/ever/you/want/the/stuff?? ctm -v -v /where/you/store/your/deltas/src-cur.*??とします.
CTM
はどれがgzip
されているか理解します. 従って最初に
gunzipしておく必要はありません. ディスクの節約にもなります.
全体の処理に関して確信するまではCTM
は(ソース)ツリーに対して
何もしません.
また, デルタを確かめるためには``-c
''フラグを使うことができます.
このフラグがあるとCTM
はツリーに対して実際には何も行ないません.
単にデルタの完全性を確認し, 現在のツリーに問題なく使用できるかを確認
するだけです.
CTM
には他にもオプションがあります. 詳細に関してはソースを
見てください.
もし誰かが「ユーザ インターフェース」の部分に関して助けてくれるなら 私はとても嬉しいです. なぜならどういうオプションが何を, どのよう に, いつ行なうようにするべきか決めかねているからです.
以上でやることは本当に全部です. 新しいデルタを入手した時には,
ソースを最新のものにするためにそれをCTM
に通すだけです.
もしデルタを再ダウンロードするのが骨の折れる作業であれば, デルタを
消さないでおいてください.
なにかおかしなことが起こった場合には置いておけば良かった
と思うかもしれません. もしフロッピーディスクしか持っていない状況
であってもコピーを取るのにfdwrite
を使うことを考えてください.
CTM
の将来計画重要なもの
CTM
が``foo/bar.c
''というファイルを変更しようと
する時, 最初にfoo/bar.c#CTM
というファイルがあるか
どうかチェックします. もしこのファイルがあれば, それに
デルタを適用します. このようにしてfoo/bar.c
ファイルをローカルな要求に合うように変更しておくことができます.
CTM
に付ける. これは
次のようなものです.
ctm -r src/sys/i386/wd.c /here/are/my/deltas/src-cur.*これは src-cur ファイルから
wd.c
を復旧して現在の状態に戻します.CTM
へのオプションを整理する. さもないと混乱し, 直観に反したもの
になります.残念なことに私は非常に忙しいです. 従ってこれを行なうどんな手助け でも歓迎します. その際, 自分が何をやりたいかを私に 言うのを忘れずに.
「DESに染まった」(例えば, 国外への持ち出しが規制された)ソースは
まったく含まれません. 手に入るのは「国際」バージョンだけです.
もし興味のある人が多いようであれば, 我々は``sec-cur
''シーケンスも
セットアップするつもりです.
もしあなたがFreeBSDに対して頻繁なまたは価値のある貢献をしている
のであれば, 私は特別なサービス, 一つにはftp
かrcp
によるあなた
の近くのマシンへの配布, をしたいと思うでしょう.
これには時間がかかるので, あなたがこれを受けるに値する必要があります.
しかし, あなたにその価値があるなら, 私は喜んでそうするでしょう.
ports
コレクションに対するデルタのシーケンスもあります. しかし,
まだあまり興味は持たれていないようです. もしこれに対するメーリング
リストが欲しい時も私に言ってください. 我々はセットアップすることを
考えます.
もしあなたがコミット特権を持っているか, または同様にFreeBSDコアチーム
からその必要ありと認められていれば, CVSリポジトリツリーへの
アクセスも同じ手段で得ることができます. 詳細はPoul-Henning Kamp
<phk@FreeBSD.ORG>
へ聞いてください.
<bde@FreeBSD.ORG>
辛辣なペンと価値のないコメントに対して.
<sos@FreeBSD.ORG>
よく辛抱してくれました.
ctm_[rs]mail
を書いてくれました. とても感謝して
います.
<jkh@FreeBSD.ORG>
彼が頑固として譲らなかったため, 私もこの CTM
をもっと良いものに
しないわけにはいきませんでした. 彼の頑固さに感謝します.
気に入ってくれることを願っています...