タグに関する選択 — tagging-method の導入

では、ファイルにたいしてどのような目録タグが与えられるのでしょうか? 一般的に、ファイルシステムは組み込みで、目録タグのような概念をサポート してはいません。オペレーティングシステムは組み込みの目録タグを持って いません。そのため、ユーザは、ファイルにタグを割り当て、その割り当て を管理するために、明示的な操作をする必要があります。

arch はその方法について選択させます。ファイルにタグを 割り当てるための三つの方法があります。最初にプロジェクトを作る時に、 この三つの方法のどれかを選びます。

それらの方法については簡単にここで導入し、詳細はその後に説明することに します。

タグづけの名前による方法 単にタグに関して無視することもできます — まったく利用 しないというものです。これは、タグづけの名前による方法、と呼ばれて います。この方法ではそれぞれのファイルの目録タグは、本質的にはそのファイルのパス名 と同じになります。結果として、ファイルを名称変更した場合、そのタグも変わります。

           The names Method of Tagging


        file path               inventory tag
        ---------               -------------

                Before a rename
        ./hw.c                  ?./hw.c

                 After a rename

        ./hello.c               ?./hello.c

ファイルが名称変更された場合に、ツリー間でその変更を同期させる必要がなければ、 名前によるタグづけは一番簡単な方法です。

タグづけの明示的な方法 明示的な 方法では、目録タグはファイルとは独立に .arch-idsという名前のサブディレクトリに保存されます。 この方法を使うのは、CVSのような古いリビジョン管理システムを使うのと よく似た方法です: もし新しいソースファイルを追加するなら、それにタグをつけるために、 larch addコマンドを使わなくてはなりません。 もしファイルを削除する なら、タグを削除するためにlarch deleteコマンドを使わなくてはなりません。 また、対応するタグファイルを移動するのに、larch moveコマンドを使わな くてはなりません。これは実績のある方法ですが、ユーザによっては、 add, delete, や move のような コマンドを使うのを不便に思う人もいます。

タグづけの暗黙的な方法 暗黙的な 方法は、明示的な方法と、 名前による方法のスーパーセットです。 特定のファイルに対して、タグを定義しないこともできます — その場合、名前による方法のように扱われます。 larch addを使ってタグを定義することもできます — この場合、 明示的な方法のように扱われます。しかし、 暗黙的な方法の本当の便利さは、次のような ものです: そのファイルの先頭または末尾付近に特殊な形式の文字列を埋め込むことに よってファイルにタグを定義することもできます (たとえば、ソースファイルのコメント部分などに)

新規ユーザにとっては一番馴染みのない方法であるとは思いますが、 暗黙的な 方法を使うことを強く進めます。 以下で見ていくように、それは、欠点を十分に補うだけの利点があります。