CVSによるソースの公開

1998年10月28日(水)
高田光隆 (takada@tron-net.gr.jp)

CVSを使用する経緯

さて、これまで B-Free OS のソースは、適当なタイミングで tar + gz の形 でファイルにまとめて公開していました。
これだと、公開の間の修正は、修正者以外見ることができません。あまりに公開の間が長いと、
なーにをやっているのかということで心配になってきますよね?

で、使いかたです。

CVS は、ソースの取得だけでなく修正を加えたソースの反映もできますが、
今回は取得する方法だけを説明します。取得だけでなく、変更したファイルを
アーカイブに反映する方法については、B-Free kernel ML の方で説明します。

まず

CVS をどこからか落としてきます。
CVS は、GNU のアーカイブに入っていますし、GNU 以外でも http://www.cyclic.com/ などでもダウンロードでき ます。
cyclic.com には、UNIX 以外でも Windows、OS/2、Macintosh で使える バイナリがあるようです。この説明では、UNIX を前提として説明します。

落としたツールをコンパイルします

これは、ダウンロードしたファイルを展開すると、INSTALL というファイルがあります。
このファイルを読んでコンパイルしてください。基本的に configure; make install で OK のはずです。
CVS では、リモートのマシンからソースを落とす方法が何種類かあるのですが、
今回は、誰でも落とせる方法として pserver を使った方法を説明します。


・まず環境変数を設定します。設定する環境変数は、CVSROOT という変数です。
下線部を入力してください。


■ bsh 系のシェル(bash/ksh/bsh) の場合。
$ CVSROOT=:pserver:anonymous@ns.tron-net.gr.jp:/usr/local/src/master
$ export CVSROOT
■ csh 系のシェルの場合。
% setenv CVSROOT :pserver:anonymous@ns.tron-net.gr.jp:/usr/local/src/master

・cvs の anonymous ユーザにログインします。
(実際に、ns.tron-net.gr.jp にログインするわけではありません)
$ cvs login

そうすると、パスワードを聞いてきます。パスワード anonymous を入力します。

(Logging in to anonymous@ns.tron-net.gr.jp)
CVS password: anonymous

このパスワードは、~/.cvspass というファイルに記録されますので、次回からは入力する必要はありません。
・次に、ダウンロードしたい適当なディレクトリに行きます。
ここでは、/tmp/foo というディレクトリにダウンロードすることにします。

$ mkdir /tmp/foo
$ cd /tmp/foo

・cvs を実行します。ソースファイルを持ってくる場合には、cvs コマンドにcheckout を指定します。

$ cvs -z3 checkout btron-pc

そうすると、サーバ (ns.tron-net.gr.jp) から最新のソースがカレントディレクトリにダウンロードされます。
-z3 というオプションは、通信路上で圧縮した状態で転送するかどうかを指定します。
3 という数字は、圧縮のためのパラメータです。現在すべてのソースを落とすと2M 強になります。
これは、圧縮していない状態のもの。圧縮パラメータをつけておくと大体10 分から 20 分ほどでダウンロードできます。

本当は、CVS を使って全部落とさなくても、ftpから最新のソースを取ってきて、 それを展開すれば同じことができるはずなんですが、試していません。
その場合には、ソースを展開したディレクトリ(btron-pcが入っているディレクトリ。btron-pc の中じゃないよ)
で、cvs -z3 checkout btron-pc を実行することになります。

これで

最新のソースがダウンロードできました。一旦ソースをすべて落とすしておけば、 次回からは変更のあったファイルだけをダウンロードしてくれます。
適当なタイミングで cvs -z3 checkout btron-pcを実行してみてください。

最後に

今のところ、どのような修正が行われているかを見ることは難しいですが、これも cvsweb というツールを使って Web 上から簡単に把握できるようにするつもりです。
cvsweb 以外でもよいツールがあったら教えてください。

このページについての感想は、bfree-webmaster@tron-net.gr.jpまで送ってください。
B-Free ドキュメント一覧へ戻る
B-Free オフィシャルホームページへ戻る
Copyright (C) 1996-1999 B-Free Project