どのように動作するか — 新しいリビジョンのコミット

commit はアーカイブに対して何をするのでしょうか?
        # cd to the directory for the version we are working 
        # on:
        # 
        % cd ~/{archives}
        % cd 2003-example/
        % cd hello-world/
        % cd hello-world--mainline/
        % cd hello-world--mainline--0.1/
        % ls
        % ls
        +version-lock   =README         base-0          patch-1
patch-1 サブディレクトリは新しく作られたものです:
        % cd patch-1

        % ls
        +revision-lock
        hello-world--mainline--0.1--patch-1.patches.tar.gz
        log
普通、ログファイルは、あなたの書いた内容に、いくつかの追加ヘッダを 付け加えたものです:
        % cat log
        Revision: hello-world--mainline--0.1--patch-1
        Archive: lord@emf.net--2003-example
        Creator: Tom (testing) Lord <lord@emf.net>
        Date: Mon Jan 27 22:26:13 PST 2003
        Standard-date: 2003-01-28 06:26:13 GMT
        Summary: Fix bugs in the "hello world" string
        Keywords: 
        New-files: \
          {arch}/hello-world/ [....] /patch-log/patch-1
        Modified-files: hw.c
        New-patches: \
          lord@emf.net--2003-example/hello-world--mainline--0.1--patch-1

        Spell "world" correctly (not "warld").

        Add a newline to the hello world message.

.patches.tar.gz ファイルは、何か チェンジセットと 呼ばれるようなものです。それはbase-0と、patch-1のリビジョン間 の差分として、あなたの変更点を記述したものです。後の章でチェンジセットの性質についてもっと詳しく 学ぶことになるでしょう。いまは、チェンジセットを、あなたが変更を加える前のbase-0 リビジョンと変更を加えたあとの、同じツリーとの間で実行したdiff -rの出力と 同様のものとしてとらえることができます。 (あるいは、arch ユーザの一人によれば: ステロイド上のパッチセット、となります)

プロジェクトツリー中で:
        % cd ~/wd/hello-world

コミットコマンドは二つの効果を持ちます。一つは、 {arch}/hello-world配下に、ログファイルを追加します。第二に、base-0 リビジョンの代わりに、patch-1リビジョンのキャッシュコピーを含むように、 {arch}/++pristine-trees を書き換えます。