English

CVS ダイジェスト

Table of Contents

cvs repository tree

     $CVSROOT(openlab.jp:/circus/cvsroot)
        |
        |
        +-- skk --+-- main (Main distribution -- Emacs Lisp, tutorials, etc)
                  |
                  |
                  +-- dic (Dictionaries)
                  |
                  |
                  +-- tools (Dictionary maintenance tools)
                  |
                  |
                  +-- skkserv (Dictionary server)
                  |
                  |
                  +-- pySKK (SKK related libraries using python)
                  |
                  |
                  +-- web (Web page html files)

cvs main trunk/branch history map

                                  +---------+    +---------+
                 legacy branch    | 10.62.2 |----| 10.62.x |
                                / +---------+    +---------+
                               /
                              /
+----------------+    +------------------+    +---------------+    +-----+    +-----+
|10.62 (skk10_62)|----|10.62a (skk10_62a)|----| 11.3 (Sakurai)|----|11.4 |----|11.x |  <- The main trunk
+----------------+    +------------------+    +---------------+    +-----+    +-----+     (daredevil skk)
                                                     /
                                                    /
                                                   /
                                    +-----+    +-----+    +-----+
                daredevil branch    |11.1 |----|11.2 |----|11.x |
                                    +-----+    +-----+    +-----+

cvs の入手方法

CVShttp://ftp.gnu.org/non-gnu/cvs/ で配布されています。

Windows で CVS を利用し開発に参加される方は、cygwin 環境を利用して下さい。詳細については CVS on Windows をご覧下さい。

cvs に関する情報は

http://www.nongnu.org/cvs/

から入手可能です。また、CVS に関する日本語の情報として、以下のようなページがあります。

http://radiofly.to/nishi/cvs/
http://www.itojun.org/hack/cvs/tut-kernel.html
なお、Emacs 21.x では pcvs (pcl-cvs) というフロントエンドが付属しています。

cvs サーバからの SKK ソースの入手

Login

まず、guest アカウントで openlab.jp の cvs server にログインします。

$ cvs -d :pserver:guest@openlab.jp:/circus/cvsroot login

パスワードの入力を促すプロンプトが出るので、パスワードとして `guest' を入れ、CR しましょう。

CVS password: guest (CR)

~/.cvspass というファイルに password が記録され、次からは明示的な login は不要になります (*注1)

Checkout

Checkout して cvs server からソースをもらってきます (このファイルをワーキングコピーといいます) (*注2)。Maintrunk (Daredevil SKK-11.x) を入手したければ、下記のようにします

$ cvs -d :pserver:guest@openlab.jp:/circus/cvsroot checkout skk/main

Legacy branch (maintenance version of SKK-10.x) を入手したければ、下記のようにします。

$ cvs -d :pserver:guest@openlab.jp:/circus/cvsroot checkout -r legacy skk/main

カレントディレクトリの下にできる skk/main というディレクトリにワーキングコピーがコピーされます。

$ cd skk/main
コンパイルして使うなり、編集するなりご自由にどうぞ (但し編集結果を server のソースに反映するにはご自分専用の account が必要です。cvs account の発行を参照)。

Update

ワーキングコピーは残しておくと、cvs server 上のソースに変更が加えられたときに差分だけ取り寄せ、ワーキングコピーを最新の状態にすることができます。

ワーキングコピーは、openlab.jp:/circus/cvsroot を指していることを記憶している (*注3) ので、update から始めると、自動的にログインできます。

$ cvs update -dP
update の -d オプションは repoitory 上に存在しているのに、手元の working copy 上にないディレクトリがあれば追加し、-P オプションは逆に repositry 上に存在しないディレクトリを working copy から消し去ります。.cvsrc ファイルに
update -dP
と書いておき、常にこれらのオプションを付けることをお勧めします。

手元のソースを変更して cvs server にあるソースに変更を反映する (commit, tag)

cvs での開発参加

openlab.jp に SSH2 公開鍵 (OpenSSH) を登録することで開発に参加できるよ うになります。 まず SSH2 公開鍵 (OpenSSH)skk-owner@ring.gr.jp 宛てに送付して下さい。

登録完了の通知をお送りします。

OpenSSH でない、本家商用の SSH2 については、動作確認は取っていませんが、 当方で OpenSSH 形式に鍵を変換することで、商用 SSH2 client→openlab.jp の OpenSSH サーバというアクセスが可能なようですので、ご相談下さい。

Login

SSH 経由のアクセスにおいては login は必要ありません。skk-cvs というア カウントを committer 全員共通で使用します。

Checkout/Update

% cvs -d:ext:skk-cvs@openlab.jp:/circus/cvsroot co skk/main

checkoutできます。update なども同様です。

Commit

下記の手順を踏んで commit して下さいね。

$ cd skk/main
$ cvs commit -m "あなたのコメントをここに。" ChangeLog
$ cvs commit -m "あなたのコメントをここに。" skk.el

Tag

Daredevil SKK, legacy branch ともに Openlab でバージョンが振られたアーカイブが公開される度に tag 付けします。daredevil の tag 付けルールは、Codename というファイルの中身を参照して下さい (但し、tag には空白文字を含めることができないようなので、tag 付けするのは、Codename のうち、駅名の部分だけです)。

$ cvs tag (Codename) .

legacy branch はtag は skk10_62, skk10_63, skk10_64... というふうに付けます。

脚注

注1

ワーキングコピーは、openlab.jp:/circus/cvsroot を指していることを記憶している (*注3) ので、ワーキングコピーを置いているディレクトリで checkout, update, commit, tag などの cvs コマンドを実行すると、自動的に openlab.jp にログインして、それぞれのコマンドを実行します。

注2

~/.cvsrc に、

cvs -z3

と書いておくと、cvs server との通信内容が圧縮されます。z オプションの数字が大きい程圧縮率が高いのですが、圧縮率が高い程サーバの負担が高いので、3 ぐらいが丁度良いようです。

注3

ワーキングコピーのあるディレクトリ (及びそのサブディレクトリ) の CVS/Root というファイルにサーバ情報が保存されています。

注4

Emacs の cvs front end、pcl-cvs (Emacs 21.x では pcvs) を使うと、commit のために C キー (`cvs-mode-changelog-commit') を押すと ChangeLog から、当日 commiter 自身が書いた部分を抜き出して、log を書く手助けをしてくれます。

Table of Contents へ

Top 頁へ

mailto: skk@ring.gr.jp

Last Modified: $Date: 2007/05/16 13:05:09 $