make-category, make-branch, そして make-version のようなコマンドは実際には何をするのでしょうか? それは概念的には非常に簡単なことです: アーカイブ中に新しいディレクトリを作ります。
% larch whereis-archive lord@emf.net--2003-example /home/lord/{archives}/2003-example % cd `larch whereis-archive lord@emf.net--2003-example`
カテゴリは最上位のディレクトリです:
% ls =meta-info hello-world
ブランチは次の階層です:
% ls hello-world =README hello-world--mainline
Versions the third:
% ls hello-world/hello-world--mainline =README hello-world--mainline--0.1
バージョンもそれ自身、ディレクトリです:
% ls hello-world/hello-world--mainline/hello-world--mainline--0.1/ +revision-lock +version-lock =README
注意: =README ファイルには 誰がカテゴリ、ブランチ、リビジョンを作り、またそれがいつかという情報が含まれて います。これらのファイルはアーカイブ中のファイルを手で編集してはいけない、 という通常の規則の 唯一の例外になっています。 これらのファイルに含まれているヘッダーフィールド部分から空行で区切られた後 の部分に、新しい任意のテキストを追加することができます。
注意: ロックファイル(たとえば+revision-lock) は arch によって内部的に利用されます。新しいデータをアーカイブに追加するとき、arch は単にmkdirを呼び出すわけではありません。そのかわり、同時に実行されている ほかのコマンドや、あるコマンドが実行途中でkillされたかどうか、などにかかわらず常に一貫した状態 を保つために、アーカイブを注意深く変更します。
© 2015 jtdan.com