リポジトリ - みる会図書館


検索対象: UNIX MAGAZINE 2000年10月号
8件見つかりました。

1. UNIX MAGAZINE 2000年10月号

ーけつま 3 びっド 図 5 cvs status の出力 Fi1e: concert_info Working revision: Repository revision: Sticky Tag: Sticky Date : Sticky Options : 図 6 cvs di 仕の出力 lndex : concert_info Status : 1 . 4 (none) (none) ( 取 0 Ⅱ e ) Up—t0—date Tue Aug 22 19 : 26 : 51 2000 /usr/local/cvsroot/claudia/concert—info,v RCS file : /usr/local/cvsroot/claudia/concert—info,v cvs update の使い方は簡単です。たんにコマンドライ ンドを実行すれば間題は起こらないはすです。 します。この衝突箇所を修正してから cvs commit コマ CVS は衝突箇所を作業ディレクトリ内のファイルに表示 要があります。 cvs update 実行時に衝突がみつかると、 業ディレクトリに反映させ、衝突がないようにしておく必 ます cvs update コマンドでリポジトリの内容を手許の作 そのため、竹業内容をリポジトリに反映させる前には、 てしまい、処理か完了しません。 変更箇戸励ゞ重複している場合には衝突 (conflict) カ起こっ は双方の変更箇所を反映するように処理しますが、両方の があります。このような場合、 cvs commit コマンドで ( 略 ) 0a1 diff ー rl . 1 ーて 1 . 4 retrievlng revision 1 . 4 retrieving revision 1 . 1 % cvs update —d ンで、 102 この場合は concert-info に変更があるので、 M (Mod- M concert_info cvs update : Updating cvs update の出力は以下のようになります。 ています。 付けないかをいちいち気に病むのがいやなのでいつも使っ ションを付けなくても間題はありませんか : 私は付けるか レクトリを作るためのオプションです。ふだんはこのオプ クトリカ非られていた場合に、作業スペースにもそのディ と入力するだけです。ー d は、リポジトリに新しいディレ ified) マーク付きで表示されています。はかにも、たとえ は新しくファイルか増えた場合には U マーク付きでファ イル名が表示されます。衝突した場合は C マークカ咐け られます。このときは間題を鮹夬するためになんらかの作 業をおこなわなけれはなりません。 リホジトリの内容と作業スペースの内容に違いがなけれ ば、一ト記の例の最初の 1 行だけが出力されます。 憶えると便利なコマンド 最後に、上記の 4 つはど頻繁に使うわけではありませ んが、使えると便利なコマンドをいくつか紹介しておきま しよう。 ・ CVS stat1_1S ・ cvs diff ・ cvs 10g ファイルの状態表示 (cvs status) cvs status" は、孑旨定したファイノレの現在のノヾージョン などの状態情報を出力するためのコマンドです。 たとえば、 concert-info ファイルの状態情報を知るた めには、 % CVS status concert_info とします。これに対する出力は図 5 のようになりました。 私はよく cvs status コマンドを次に説明する、、 cvs diff" と組み合わせて使っています。ます cvs status を UNIX MAGAZINE 2000 ユ 0

2. UNIX MAGAZINE 2000年10月号

- けつま 3 びっド 表 1 CVS のおもなコマンド 内容 コマンド CVS リポジトリを作成する init もとになるファイルを CVS に求する import 作業用ディレクトリにファイルを書き出す checkout ファイルに対する現在の変更を表示して、作業用ディレクトリを消去する release ファイルをリポジトリと照合して書き換える commit リポジトリに新しいファイル / ディレクトリ ( ェントリ ) を j 助日する add リポジトリ中のエントリを削除する remove 作業スペースをリポジトリに垬月させる update バージョン間の違いを表小する diff patch コマンド用の diff ファイルを作成する rdiff 各ファイルの状盟帯長を表示する stat us 各ファイルに対する履歴情報を表示する 10g リポジトリのアクセス言求を表示する history リポジトリの初期化 (cvs init) て便利です。 CVS の使用法についてはほかにも、コマン ドラインからシステム・マニュアルを参照できますし、上 最初にとりあげるのは、初期化コマンド (cvs init)" で 己の Web ページ以外にも WWW 上にさまざまな解説が す。これは、最初に CVS リポジトリを作成するためのコ あります。 マンドです。この段階では CVS に登録するファイルや ディレクトリを用意する必要はありませんが、リポジトリ CVS のコマンド を作成する場所を決めなければなりません。 次に、 CVS のおもなコマンドについて紹介していきま 完全に個人て利用する場合は、 CVS リポジトリを自分 す。コマンドラインで、 のディレクトリ内に置いてもよいかもしれません。しか % cvs ——help—commands し、別の計算機から使う可能生なども考えて、私は /usr/ と入力すると、コマンドー覧か画面に出力されます。その local ディレクトリのなかに cvsroot というディレクトリ なかから、以下でとりあげるコマンドを含め、私のよく使 を作って、このなかを CVS リポジトリとすることにしま っているものを表 1 にまとめました。私は CVS ではおも した。 root 権限で cvsroot ディレクトリを作り、所有者 に文書ファイル ( テキストファイル、い TEX のソースファ を yuzuko に変更しておきます。これで yuzuko の権限 イル、 HTML 形式のファイルなど ) を管理しているので、 でこのディレクトリ内にアクセスできるはすです。 プログラム作成時によく使うコマンドとはすこし異なる選 以下の作業は、一鍛ューサー (yuzuko) の権限でおこな 択になっているかもしれません。 いました。 CVS を使って複数のユーザーで共同作業をお こなう場合は、リポジトリ内にあるファイルへのアクセス 最初に使うコマンド 権が正しく設定されるよう、グループなどの設定に注意し まず、 CVS リポジトリと作業スペースの作成に使うコ てください。 マンドをまとめます。ここでは順に、 次に、 CVS リポジトリのディレクトリを指定して、、 cvs init" コマンドを入力します。このとき、ディレクトリは ・ CVS init 寸パスで指定する必要があります。私の場合は以下のよ ・ CVS i mp ort うに実行しました。 ・ cvs checkout ・ CVS release % cvs —d /usr/local/cvsroot init これで cvsroot の下に CVSROOT というディレクト をとりあげます。 リができあがり、そのなかにこの CVS リポジトリ全体の 管理に使われるファイルが作られます。いつも同しリポジ 1 一 = ロ 98 UNIX MAGAZINE 2000 ユ 0

3. UNIX MAGAZINE 2000年10月号

, けつま 3 びっ u ドト ーと、ユーサーが作業をおこなう作 置かれた CVS サー 業スペースのある CVS クライアントとのあいだで通信を おこなって、ファイルへの変更を言当求していく過程だと考 えると理解しやすいでしよう。 おおもとのファイルと過去の変更履歴はすべてリポジト リ ( 貯蔵庫 ) に保存されますから、 CVS を利用するため にはますリポジトリが必要です。リポジトリは CVS サー バーとなるホスト上に作成します。リポジトリを作成する 場所を決めて、そこに入れるデータを用意したら ( 初めは なくてもかまいません ) 、 CVS のコマンドを使ってリポジ トリを作成し、それらのデータを登録します。 リポジトリができれは、あとは実際の作業になります。 CVS では、、複数の人間が協調して作業する " ことが基本 なので、・作業の前に ・自分の手許に「ド業用のデータをもってくる 必要があります。作業用データは自分のデータですから、 どのように変更を加えてもかまいません。ふだんの作業で ・必要に応じて以前のファイルとの差分をとる わせる ・作業ディレクトリの内容を CVS リポジトリの朋大に ・変更を CVS リポジトリに反映させる は、 UNIX MAGAZINE 2000.10 ロントエンドだ " と説明してくれました。 CVS の後ろに CVS との違いを師匠に訊ねると、、 CVS は RCS のフ ムがあります。 CVS のほかにも、 RCS というノヾージョン管理システ RCS で、あとは区しばかりでとても簡単でした。 ローカル言算機の場合とはとんど同しように利用できるの る示用さえ憶えてしまえば、遠隔ホスト上のリポジトリも た。しかし、よく使うコマンドとそのコマンドが影響す マンド自体もどれがどれだか分からなくなったりしまし らず、どこでコマンドを入力すればいいのか迷ったり、コ CVS を使い始めたころはこの仕組みもよく理解してお これらの作業をおこなうことになります。 で、通常はイ乍業用のホストで CVS のコマンドを利用して はコマンドライン型のユーサー・インターフェイスなの など、いくつかの作業を繰り返すことになります。 CVS 図 1 CVS のホームページ ( 0 ( ″ 2 れそ阨な iO SY 計 ー物を 0 に旅 0 府宿′は fO ′ V に海府て 0 府 ~ ′ CVS Home Ope れ S 供で ~ V 総れ CO ⅲー新「ス「・ CVSM 材 ( く 5 く CVS 物 eConc ぼ代 V び引 0 れ sS アに m. 山 edo 面 3 叩ー 50 逝 00 Ⅱ e れ vo 水ーな 3 sp ent マ師 00 ( 0 第む 0 い y 式ロル CVS 凾研 0 マに 0 れ 0 を omm 山 d ldeve.lop & ー町 g ら distributed am 雇 0 SP ー聞第 ( Ⅳ SA 聞、イ地を 新 0M2 の物物響等を submit\ 0 ・魅団い 5 に財 300 に m 団浦 d de マ elop s 甎 c 己山 ela 記式 ( 0 弡を om 田′ h び e に化 an rn 秋 ( 0 闇胤 ・代、山 e 口を dcl 肥ー 0 model を 0 び引 on ( 0 第を馘 3 マ 3 代 cie 」 しに K れ e 肥に yO を物金 0 CVS Nevs ・ 1 な団 tools are ”曲に on mo platforms ( け、 00mm0 れ朝市市 e cl ⅳ 0d1 k -0 破 mod 社 印な 00 00 0 印四を第店引 0 明明 第・ OA ーを一 出・ C 、”当 0 を U ををを Co 臧心破引知Ⅲ ( をこ 0 は ~ 町「れ 0 熄 : 0 ル ad 新 d 行田 0 血 $. ヴ . ando 広ピミ第 b 山 WmCVS Ⅵ軈山い•lk. 饕心 0 観田まー加 0 い 0 戸 0 " ( 0 “加 p " 0 0 ハ 0 籍・化Ⅵ、 C ' る T 止山を LI 以 d 三 omS 新」 cs をは 15 い : 1 靆 M を、 sK v v 引 0 気いむ cl 以 30 E ー” Y 朝リ ( 新を do 代 0 も 0 戰ⅶ 0 以 A 翳 d -0 に - 第 啾を朝 co れを v 記 oa を C% ( に d . を ! 4 を ! 0 、 .- : に嶽麒 5Y00 k せ歳 5 Ⅷ d 0 、 http://www.cvshome.org/ RCS がいて、リピジョン管理に必要な機能は RCS カ甘是 供し、複数の人間が協調して作業するための機能は CVS カ甘是供していると理解するのがよいようです。私は RCS 自体を茁妾使ったことはないのですが、 CVS を使ってい ると出力やマニュアルのなかに RCS という用語がとき どき登場します。 CVS をより深く理解するために、次は RCS についても調べようかな、と考えているところです。 リの差分を言当求して、バージョン管理をおこなうためのア 前節て紹介したとおり、 CVS はファイルやディレクト CVS を利用しよう プリケーションです。 97 この Web ページには詳しいマニュアルも用意されてい インストールしてください。 には、 CVS の Web«—ジ ( 図 1 ) からソースを取得して り、入っていたとしても最新版にアッフ。デートしたい場合 使用している OS に CVS か組み込まれていなかった きました。 るようです。とくに新しくインストールしなくても利用で FreeBSD では最初からシステムに CVS か含まれてい CVS の導入 明する機能だけでも十分に活用できるはすです。 最低限必要な概念にしは、って説明していきます。以降で説 も、、プログラマーではない人 " のための使い方ですから、 ます、 CVS の基本的な使い方を紹介します。といって

4. UNIX MAGAZINE 2000年10月号

けつま 3 びっドト れています。ログを書き入れて言当求すると、 CVS は変更 部分をすべて調べてリポジトリに反映させます。 このコマンドでは、コマンドを実行したディレクトリ以 下の変更がすべて反映されます。下層のディレクトリ中の 一部だけをリポジトリに反映させたい場合は、目的の場所 に移動してコマンドを実行してください。 ファイルの追加 (cvs add) 作業スペースて新しくディレクトリやファイルを作っ たときに、それをリポジトリに反映させたい場合は、、 cvs add " コマンドを使います。 たとえば、新しく作ったコ ive ーⅲ fo " というファイルを 登録したければ、 % cvs add live—info とします。するとこれに対して、 cvs add : scheduling file C1ive—info' for addition cvs add : use ' cvs commit' tO add this file permanently と出力され ( 誌面の都合 E 、で折り返しています ) 、ファ イル」助日の準備か整ったことが示されます。 このコマンドでは、、、次の cvs commit の際にファイ ルをリポジトリに追加する " という予定が言当求されるだけ なので、実際に新しいファイルをリポジトリに追加するに は cvs commit コマンドを実行しなけれはなりません。 ファイルの削除 (cvs remove) リポジトリからファイルを削除するためのコマンドは CVS remove -- ( ーす - ・ このコマンドを使うためには、ますイ乍業スペース上の目 的のファイルを実際に削除する必要があります。次に、 % CVS remove live_info とすると、リポジトリからファイルを削除する準備がおこ なわれます。 cvs add の場合と同様に、実際のファイル 削除は次回の cvs commit 実行時におこなわれます。 ファイル名の変更 モジュール中のファイル名を変更したい場合はちょっと 面倒です。いったん当求されたファイルの名前自体は変更 できないので、 cvs remove と cvs add を組み合わせて 使う必喫があります。 UNIX MAGAZINE 2000.10 必要な作業は、 1. 作業スペース上からもとのファイルを消去して cvs re- 2. 別の名前て伺し内容のファイルを用意して cvs add 3. 最後に cvs commit で両方の処理をリポジトリに反映 させる の 3 段階です。たとえば live-info ファイルの名前を con- cert-info にしたけれは、 % mv live_info concert_info % CVS remove live_info % cvs add concert—info % ・ CVS commit のように実行します。 しかし、このようにすると過去の変更履歴情幸ゞ失われ てしまいます。師匠に訊いたところ、 CVS の仕組みを完 全に理解していればリポジトリの内容を直接変更してファ イル名を変更することもできるようですが、そうすると運 用上の問題カ噺たに発生すると指摘されました。現在の CVS では、、一度登録したファイルは永遠に残しておく " と考えて、、ファイル名の変更 " という機能はないと思っ ていたほうがよいようです。 リポジトリとの同期 (cvs update) よく使うコマンドの最後は、、 cvs update" です。これ は、リポジトリの朋大をイ乍業スペースのモジュールに反映 させる " コマンドです。 cvs update は、 1 人きりで 1 つの作業スペースから CVS を利用しているときはそれほど使いませんが、 1 人 で使っているにせよ複数の人間て使っているにせよ、複数 の竹璞スペースか存在する場合にはもっとも頻繁に使うコ マンドになります。 CVS で cvs commit を実行する際には、たんに作業ス ペース中のファイルでリポジトリ中のファイルが上書きさ れるわけではありません。リポジトリのファイルと作業ス ペースのファイルの差分をとって、その部分だけを応央さ せているのです。 複数の倚喋スペースか存在する場合には、リポジトリと イ′ド業スペースを同期させてからファイルに対して処理を加 えて cvs commit で反映させるまでのあいだに、別の作 業スペースからの変更が cvs commit されている可能生 101

5. UNIX MAGAZINE 2000年10月号

- けつま 3 びっ u ド 図 3 cvs release の実行結果 % cvs release —d claudia You have [ 0 ] altered f iles in this repository. Are you sure you want tO release (and delete) directory Yuzuk0 removed a top blank line . 図 4 cvs commit のログ入力 'claudia' : y CVS : CVS : CVS : CVS : CVS : CVS : CVS : CVS : Enter Log ・ Lines beginning with Committing 1 Ⅱ Modified Fi1es : concert_info ( CVS : ' are removed automatically モジュールのリリース (cvs release) cvs release" は、あるモジュールの作業スペースを消去 のファイルを実際に削除するためのオプションです。 を指定して以下のように実行します。 -d はイ乍業スペース ペースの 1 つ上のディレクトリに移動し、モジュール名 するためのコマンドです。消去したいモジュールのイ乍業ス % cvs release —d claudia 100 ・ cvs add ・ CVS commit す。私カ晦日のように使っているのは以下の 4 つです。 次に、ふだんの作業で頻繁に使うコマンドを紹介しま ふだんよく使うコマンド データをそのまま保存しています。 ません。いったん cvs checkout したらほとんどすべての タのバックアップなので、 cvs release はあまり使ってい 前述したように、私が CVS を使う目的の 1 つはデー マンドで取得すればよいのです。 ジュールが必要になったらあらためて cvs checkout コ ったん cvs release を使ったとしても、次にまた同じモ もので、リポジトリから消去するわけではありません。い このコマンドは作業スペース内のモジュールを消去する ジュール claudia はきれいさつばり消されます。 消去してよいかをいれます。ここで y を入力するとモ イルの違いに関する情幸ミ表示さ続いてモジュールを リポジトリと作業スペースのファ すると図 3 のように、 ・ CVS remove ・ cvs update このうち上の 3 つは、作業スペースでのモジュールに 対する処理をリポジトリに反映させるコマンドで、最後の cvs update" は逆に、リポジトリの状態をイ乍業スペース に反映させるコマンドです。 なお、 cvs checkout を実行した点でリポジトリやモ ジュールに関する情報が作業スペースの CVS ディレクト リに言求されているので、リポジトリやモジュールか馥数 存在する場合でも、以下のコマンドはとくにそれらを指定 して実行する必はありません。 イ結果の反映 (cvs commit) cvs commit" はおそらく、 CVS 全体のなかで一番重要 なコマンドでしよう。これは、イ乍業スペースでモジュール に加えた変更をリポジトリに反映しろ " という命令です。 ファイルの追加や削除、既存ファイルの変更など、該当 するモジュールに対するすべての変更は、このコマンドに よってリポジトリに書き込まれ、同時に履鵬青報が付け加 えられることになります。 使い方自体はとても簡単です。竹喋スペースになってい るディレクトリ ( 今回の例では -/cvswork/claudia) で、 % CVS commit と入力すれば、作業スペースとリポジトリのモジュール の変更か験査され、ログを記入するための画面が表示さ れます。図 4 の例では claudia ディレクトリ中の con- cert-info ファイルを書き換えたので、その変更カ尋長告さ UNIX MAG AZIN E 2000.10

6. UNIX MAGAZINE 2000年10月号

, けつま 3 びっ 図 2 cvs import のログ . んカ This is the first version for claudia. CVS : CVS : Enter Log ・ Lines beginning with CVS : CVS : ( CVS : ' are removed automatically トリを使うと思われる場合には、シェルの工羅竟変数に場所 を登録しておくと自重加勺にその情報か読み込まれるように なるのてイ叫リです。以下のようにシェルの設定ファイルに 追加しておきましよう。 ・ csh 、 tcsh の場合 setenv CVSROOT /usr/local/cvsroot ・ sh 、 b ” h の場合 CVSROOT=/usr/IocaI/cvsroot export CVSROOT モジュー ) レの登金泉 (cvs import) リポジトリが用意できたら、次は CVS の管理下に置く ディレクトリやファイルを登録しなければなりません。リ ポジトリに登録されるディレクトリやファイル群をひとま とめにしたものをモジュールと呼びます。リポジトリにモ ジュールを求するコマンドは、、 cvs import" です。 ます、登録したいファイルやディレクトリが含まれる ディレクトリに移動して僻当求したいファイルをまだ作っ ていない場合は、空のディレクトリでもかまいません ) 、以 ・モジュール名 (claudia) cvs import" の次に並んでいる項目は順に % cvs import claudia yuzuko initial 下のように入力します。 UNIX MAGAZINE 2000.10 態です ) ェデイタを終了すると、そのディレクトリにある を書き込んで ( 図 2 は 1 行目にすでにログを書き込んた漱 定されているエデイタカ起動されます。ここで適当なログ 面 ( 図 2 ) になります。このときは環境変数 ED 工 TOR に指 cvs import を実行すると、登剥のログを入力する画 す。 ように登録先のリポジトリの位置を指定することもできま です。オプションを指定すれは、上記の cvs init と同じ リリースタグ ( 登宝剥寺の状態に付ける名前 ) (initial) ・べンダータグ ( 作成者名のことが多い ) (yuzuko) ファイルがモジュールとしてイ求され、 cvsroot ディレク トリの下に claudia ディレクトリが作成されます。この 時点で、登録するファイルか置かれていたもとのディレク トリはいったん削除し ( 大事なデータなら、念のためバッ クアップをとっておきましよう ) 、そオ人降のファイルの 変更は次に説明する、、 cvs checkout" を使って竹業スペー スでのみおこなうようにするとよいでしよう。 モジュールの取得 (cvs checkout) 上の 2 つのコマンドでリポジトリ ( サーバー側の準備 か整ったので、次はイ乍業スペースを準備します。 作業スペースにモジュールを書き出すためには NScvs checkout" コマンドを使います。ますモジュールを各内す るためのディレクトリ ( たとえば、 ~ / cvswork とい、った ディレクトリを作るとよいでしよう ) に入り、そこで、 % cvs checkout claudia と、取得したいモジュールの名前を指定してコマンドを実 行します。ここでも -d オプションで明示的にリポジトリ の場所を指定できます。工竟変数などでリポジトリの場所 を設定していない場合は、このオフションが必須になりま す。 これが成功すれは、カレント・ディレクトリのなかに claudia という名前のディレクトリが作成されます。ディ レクトリ中にはリポジトリに登録したのと同じファイル群 が入っているはすです。また、 claudia ディレクトリ中に CVS という名前のディレクトリが作らオ L 、そのなかにリ ポジトリやモジュール内のファイルについての情報などが ↑褓内されます。 これで、イ乍業スペースでファイルの処理ができるように なりました。作業スペースでは、ふつうにエデイタなどを 使って新しいファイルを作ったり、ファイルの内容を修 正したりしてかまいません。竹喋カ鮗った時点で、彳あす る、、 cvs add" や、、 cvs commit" などを使って竹業内容を リポジトリに反映させれはよいのです。 99

7. UNIX MAGAZINE 2000年10月号

- けつま 3 びっド ・師匠が用意してくれた CVS リポジトリから複製を作成 ( チェックアウト ) してから、 複製で作業してその成果をリポジトリに応央させる ・師匠の作業の結果を作業用の複製に反映する という作業の繰返しでした。そのうちだんだん慣れてき て、 CVS の機能を使って自分か書いた文章を師匠がどの ように直したかを調べ、専門用語を憶えたり師匠好みの日 本言韶 ) 使い方を発見したりと、徐々に CVS の利点を享受 できるようになってきました。 いまでは、師匠や他の人たちと共有するファイルだけで なく、自分だけで使っているファイルも CVS で管理す ることか増えました。、、 1 人て使うファイルにまでどうし て CVS が必要なの ? " と思うかもしれません。私がなぜ CVS を多用しているのか、その便利さについて説明した いと思います。 というわけで、今回のテーマは「プログラマーではない 人のための CVS の活用法」です。 CVS の利点 CVS は、ソフトウェアの共同開発を目的に作成された システムなので、そのために必要な機能がいろいろ含まれ ています。ソフトウェアの開発中にはさまざまなバージ ョンのファイルが多数生成されます。 CVS は異なるバー ジョン間の関係を : 冓造で表現して扱えるようになって おり、さまざまな状況てイ叫リに使えます。この構造によっ て、変更に関する里の系列か保存さオ・し、ある時点で別の 系列への変更 ( 枝 ) が生した場合でも、両方の系列をうま く処理できます。いつ、誰が、なんのためにファイルを変 更したかといった情報も言当求できますから、必要に応して それらを確認したり、場合によってはファイルを以前の バージョンに戻したりもできます。 同しようなバージョン管理システムには彳幻する RCS などがありますが、とくに CVS 独自ク芋徴として、 ・ディレクトリ構造の管理 ・ネットワークを介した避鬲管理 への対応を挙げることかできます。このため、複数の互い に里するファイルを複数の人間で共同利用したり、異な 96 る場所にある複数の言算機でファイルを共有したりできる のです。 でも、私にとって CVS の最大の利点は、 容易にバックアッフ。がとれる バージョン管理で履歴を知ることももちろん重要です が、とくに個人か所有しているファイルの場合は、それよ りもこの、、複数の場所て 1 司し内容のディレクトリを系財寺で きる " という致にお世話になることが多いのです。 作業用ディレクトリでの作業結果を CVS リポジトリ中 のファイルに登録すれば、作業用ディレクトリと CVS リ ポジトリの 2 カ所に同し内容のものか存在することになり ます。さらに別のディレクトリで同しファイルを取得する と、 3 カ所で同じ内容寺できます。これは一見冗長に みえるかもしれませんが、 CVS では遠隔地にある別の計 算機で同じファイルを共有できるので、リポジトリとイ乍業 用ディレクトリをそれそれ別の引・算機に置いておけば、ど ちらかか物章しても大事なデータを失わずにすみます。ま た、 OS を入れ替えたり新しいハードディスクを買ってき たときも、すぐにほは 1 司じ内容のデータを回復できます。 ハードディスクが壊れるのを心配して定期的にバック アップをとるのはとても面倒な作業です。システムすべて とはいわないにせよ、自分の成果物や作業中のデータだけ は事故があってもけして失いたくない、という願いをかな えてくれるのが CVS だと思います。 とくに描丘では、 1 人で複数の計算機を所有している人 も多いようです。私でさえ、多いときにはデスクトップ 計算機とノート PC を合わせて 3 台も使っていました。 ハードディスクの値段もたいへん安くなったので、大量の データの保存には他のバックアッフ。用機器と同様に手軽に 利用できます。かなり面に、また簡単に安じ、を買えるこ とは、あまり触れられてこなかったにせよ、 CVS の利点 の 1 つではないでしようか。 CVS の仕組み CVS のシステムを、、データの置き場所 " という視点で みると、リポジトリと作業スペース ( ディレクトリ ) に分 けることができます。ー殳に、、 CVS を使う " とは、差分 情報やファイル更辛刑のログ清報を言当求するリポジトリが UNIX MAGAZINE 2000.10

8. UNIX MAGAZINE 2000年10月号

表 3 40 38 37 30 24 23 22 20 活発に活動している IETF 分科会覧 過去 6 カ月間 ( 20()() / 2 / 16 ~ 2000 / 8 / 15 ) avt : Audio/Video Transp ort mpls: Multiprotocol Label Switching dhc: Dynamic Host Configu- rat ion ipp. lnternet Printing Prot0- col pkix: Public-Key lnfrastruc- ture ( X. 509 ) sigtran: Signaling Transport sip. Session lnitiation Pro- t0C01 dnsext: DNS Extensions mobileip. IP Routing for WireIess/MobiIe Hosts 同数の分科会が多数のため割愛 26 20 19 14 13 12 11 過去 3 カ月間 ( 2000 / 5 / 16 ~ 2000 / 8 / 15 ) avt: Audio/Video Transport mpls: Multiprotocol Label Switching ipp. lnternet Printing Prot0- C01 pkix: Public-Key lnfrastruc- ture ( X. 509 ) dhc. Dynamic Host Configu- rat ion sip Session lnitiation Pro- t0C01 ipsec: IP Security Protocol mobileip: IP Routing for WireIess/ Mobile Hosts rohc: Robust Header Com- presslon 同数のう斗会が多数のため割愛 11 10 8 6 RFC ダイジェストーの 過去 1 カ月間 ( 2000 / 7 / 16 ~ 2000 / 8 / 15 ) snmpv3: SNMP Version 3 port rmt: Reliable Multicast Trans- col ipp: lnternet Printing Prot0- Access Protocol Extension imapext: lnternet Message rat ion d hc : Dynamic Host Configu- Techn010gy cat: Comrnon Authentication WireIess/MobiIe Hosts mobileip. IP Routing for ture ( X. 509 ) pkix: Public-Key lnfrastruc- Switching mpls: Multiprotocol Label avt: Audio/Video Transport 各種のトランスポート・プロトコル上で CMP (Cer- tificate Management Protocol) を利用する方法を提案 している。 [draft-ietf-pkix-ipki-pkalgs-OO txt] lnternet X. 509 Public Key lnfrastructure Representa- tion of PubIic Keys and Digital Signatures in lnter- net X. 509 Public Key lnfrastructure Certificates インターネット X. 509 公開鍵インフラストラクチャ . 証 日月書の公開鍵と電子署名の表現方法 X. 509 公開鍵インフラストラクチャにおける証明書の 公開鍵と電イ署名の表現ガ去を提案している。 [draft-ietf-pkix-laap-01 txt] Limited AttributeCertificate Acquisition Protocol 限定属性証日月書取得プロトコル LDAP での利用を目的とし、使用できる機能に制限を 加えた属性証明書取得プロトコルを定義している。 [draft-ietf-pkix-new-partI-02. txt] lnternet X 509 PubIic Key lnfrastructure Certificate and CRL Profile インターネット X. 509 公開鍵インフラストラクチャ : 証 日 , 瞎および CRL について X. 509 公開鍵インフラストラクチャの証明書および CRL に関する仕様を提案している。 UNIX MAGAZINE 2000.10 [draft-ietf-pkix-pi-01 txt] lnternet X. 509 PubIic Key lnfrastructure Permanent ldentifier インターネット X. 509 公開鍵インフラストラクチャ . 普 遍的な識別子 個人の名前か変更された場合でも個人を一意に特定でき るように、公開鍵証明書に新勺な識別子フィールドを定 義することを提案している。 [draft-ietf-pkix-pkixrep-OO. txt] lnternet X. 509 PubIic Key lnfrastructure Repository Locator Service インターネット X. 509 公開鍵インフラストラクチャ . リ ポジトリ特定サービス ドメイン名にもとづく PKI リポジトリを利用可能にす る、、 PKI リホジトリ特定サービス (Repository Locator Service)" を提案している。 [draft-ietf-pkix-qc-05. txt] lnternet X. 509 Public Key lnfrastructure Qualified Certificates Profile インターネット X. 509 公開鍵インフラストラクチャ : 認 定された証日艪について より確実な個人ク寺定を目的とした、、認定された証明書 (Qualified Certificates)" の仕様を定義している。 137