UbuntuにCVSをインストールする

         

最近はOTRSのようなオープンソースのソフトを改造することが増えてきたので、CVSを導入しようかと思いましたので手順として残します。

インストール手順というほど大げさではないですが、apt-getでインストール。

$ sudo apt-get install cvs
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
cvs
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 15 個。
1685kB のアーカイブを取得する必要があります。
この操作後に追加で 3703kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com jaunty/main cvs 1:1.12.13-12ubuntu1 [1685kB]
1685kB を 3s で取得しました (530kB/s)
パッケージを事前設定しています ...
未選択パッケージ cvs を選択しています。
(データベースを読み込んでいます ... 現在 140773 個のファイルとディレクトリがインストールされています。)
(.../cvs_1%3a1.12.13-12ubuntu1_i386.deb から) cvs を展開しています...
man-db のトリガを処理しています ...
doc-base のトリガを処理しています ...
Processing 2 added doc-base file(s)...
Registering documents with scrollkeeper...
cvs (1:1.12.13-12ubuntu1) を設定しています ...

xinetdが入ってなかったのでこちらもインストール。

$ sudo apt-get install xinetd
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
xinetd
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 15 個。
139kB のアーカイブを取得する必要があります。
この操作後に追加で 385kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com jaunty/main xinetd 1:2.3.14-7ubuntu1 [139kB]
139kB を 1s で取得しました (138kB/s)
未選択パッケージ xinetd を選択しています。
(データベースを読み込んでいます ... 現在 140885 個のファイルとディレクトリがインストールされています。)
(.../xinetd_1%3a2.3.14-7ubuntu1_i386.deb から) xinetd を展開しています...
man-db のトリガを処理しています ...
xinetd (1:2.3.14-7ubuntu1) を設定しています ...
* Stopping internet superserver xinetd [ OK ]
* Starting internet superserver xinetd

さてさて、cvsの初期設定。

リポジトリ用ディレクトリ作成
$ sudo mkdir /var/cvs

リポジトリの初期化
$ sudo cvs -d /var/cvs init

xinetdの設定
vi /etc/xinetd.d/cvs
ファイルに書き込み↓
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=/var/cvs
server_args = -f --allow-root=/var/cvs pserver
# bind = 127.0.0.1
}

xinetdの設定を有効にするために再起動
$ sudo /etc/init.d/xinetd restart
* Stopping internet superserver xinetd [ OK ]
* Starting internet superserver xinetd [ OK ]

CVS用のOSユーザを作成
$ sudo useradd cvsuser

リポジトリをcvsuserの所有に変更
$ sudo chown -R cvsuser.cvsuser /var/cvs/

CVSを利用するためのユーザを作成(OSのユーザではない)
$ sudo vi /var/cvs/CVSROOT/passwd
ファイルに書き込み↓
kaihatsu::cvsuser

上のではパスワードが入っていないので、別途パスワードを作る。

$ htpasswd -nb kaihatsu abcdefg
kaihatsu:fINy2Fol/Zr3o
        ↑ここがパスワード(abcdefg)
なので、
$ sudo vi /var/cvs/CVSROOT/passwd
ファイルに書き込み↓
kaihatsu:fINy2Fol/Zr3o:cvsuser

netstatでcvsのサービスを確認。
$ sudo netstat -tap | grep cvs
tcp 0 0 *:cvspserver *:* LISTEN 18602/xinetd

リッスンはしているみたい

以上で終わり??

リポジトリにプロジェクト「request_project」を登録してみる。

cvs -d /var/cvs request_project request_tabl start

これまでは、ローカルでの作業なので、リモートでも試してみる。

$ export CVSROOT=:pserver:kaihatsu@hostname:/var/cvs
$ cvs login

特に問題なくログインできたみたい。

あとは、checkoutなりupdateなりcommitなりで使いましょ。

以下のサイトを参考にさせていただきました。ありがとうございます。
http://www.gfd-dennou.org/library/cc-env/cvs/basic/cvs-usage1.htm
http://hosso.com/server/daemon/cvs.html
http://www.stackasterisk.jp/tech/systemConstruction/cvs01_01.jsp#1

コメントを残す