CVSを使ってみよう!


暇だったのでCVSでも使ってみます。

CVSのインストールは・・・

Fedora Core2には、標準でCVSがインストールされているのでそれを利用します。

[root@fourth root]# rpm -qa | grep cvs
cvs-1.11.17-2

リポジトリの作成

まず、CVSで利用するディレクトリを作成します。
作成したらリポジトリとして初期化します。これによって、リポジトリにCVSROOTという
管理用ディレクトリが作成されます。

[root@fourth root]# mkdir /usr/local/cvsrepo
[root@fourth root]# cvs -d /usr/local/cvsrepo init
[root@fourth root]# ls /usr/local/cvsrepo
CVSROOT

xinetdの設定

pserverを使用したいのでxinetdの設定をします。
以下のように設定します。

[root@fourth root]# cat /etc/xinetd.d/cvspserver
# cvspserver

service cvspserver
{
        socket_type          = stream
        wait                 = no
        protocol             = tcp
        user                 = root
        server               = /usr/bin/cvs
        server_args          =-f --allow-root=/usr/local/cvsrepo pserver
        disable              = no
}


ファイルの権限も以下のように変更します。

[root@fourth root]# chmod 644 /etc/xinetd.d/cvsserver

必要であれば、/etc/hosts.allowも設定します。
そしたら設定を変更する為に、xinetdを再起動します。

[root@fourth root]# /sbin/service xinetd restart

ユーザ登録


CVSでは、特別な意味を持つユーザグループに"cvsadmin"があります。
このユーザグループに属するユーザだけが、"cvs admin"コマンドを実行する事ができます。


まずはCVSを利用するユーザグループを作成します。

[root@fourth root]# groupadd cvsusers
[root@fourth root]# groupadd cvsadmin

※.この後、"User Manager"というツールでrootをcvsadminへ追加しました。
画像がなくてすまん。。

次にCVSを利用するユーザを作成します。

[root@fourth root]# useradd -u cvsuser -g cvsusers

passwdファイルの作成


pseverを利用するので、CVSROOTの下にpasswdファイルを作成します。
passwdファイルは以下のような書式で記述します。

<ユーザ名称>:<パスワード(Crypt済み)>


passwdへ登録するパスワードは予めCrypt関数によってハッシュ化させる必要があります。
今回は、htpasswdというコマンドを使ってハッシュ化を行ないました。
ちなみにパスワードはLinux上のパスワードとは別なパスワードを登録しました。

[root@fourth root]# htpasswd -n cvsuser
New password:
Re-type new password:
cvsuser:nDrZh/xaf2pW.


この出力結果をpasswdファイルへ登録します。

CVSへ接続する

リポジトリへ接続する際は、必ずCVSROOTというものを指定します。

CVSユーザ名>@<CVSホスト名>:<リポジトリへの絶対パス


以下のようにCVSROOTを指定して、ログインしたところ正常にログインできました。
終了コードが0だしね。

[root@fourth root]# cvs -d ":pserver:cvsuser@fourth:/usr/local/cvsrepo" login
Logging in to :pserver:cvsuser@fourth:2401/usr/local/cvsrepo
CVS password:
[root@fourth root]# echo $?
0


ちなみに別のWindowsのPCからWinCVSを使って接続の確認を行なったんですが、
それについても問題なしこさんでした。
画像を決まった位置に表示するやり方がわからないので、今回も画像はなしこさんです。。