# CVSによるソースの公開

１９９８年１０月２８日(水)
高田光隆 (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