2008年 9月 25日(木曜日) 14:45

【CVS Tips】CVSの初期設定 ~サーバ編~

評価:
(0 票)

ちょっと本格的なソフトウェア開発をする際は、バージョン管理システムを使ってソースファイルのバージョン管理を行うと便利です。バージョン管理システムを使うと複数の開発者で一つのファイルを編集したり、過去のバージョンにさかのぼって再ビルドやバグ修正を行ったりできます。また、ソースファイルを一元管理できるのでまとめて定期的にバックアップをとったりしやすくなります。少なくとも、ソースコードは一人のプログラマの個人PCにしかなかったのが消えてしまったとか、開発者が辞めてしまってソースコードがどこに行ったかわからなくなってしまったとかいうことは避けられますので、どんなに小規模な開発でもバージョン管理は行っておくべきですね。

バージョン管理システムにはMicrosoftのVisual SourceSafeやIBM RationalのClearCaseなどいろいろありますが、私的には無料で利用でき、eclipseをクライアントとして使え、オープンソース開発でも定番のCVS (Concurrent Versions System)を使うことにしました。

LinuxであればCVSは標準でインストールされていることが多いので、ソースコードの管理はLinuxサーバで、普段の開発作業は個人のWindows PCで行うことができます。

ここではLinux上でCVSをはじめて使うときの初期設定の方法をご紹介します。

1. CVSを使用するユーザ用のグループを作成する

まず、CVSを使うユーザ用のグループを作成します。rootユーザで次のコマンドを実行します。

#groupadd cvsuser

#vigrコマンドで/etc/grouopにcvsuserというグループが追加されたことを確認します。

2. CVS管理用のユーザを作成

rootユーザで次のコマンドを実行し、CVSの管理者用のユーザを作成します。

#useradd cvsadmin -g cvsuser

#vipwコマンドで/etc/passwdにcvsadminというユーザが追加されたことを確認します。

3. CVSのレポジトリを作る

3.1. レポジトリを置くディレクトリを作成

rootユーザでレポジトリを置くディレクトリを作成します。ここではルートディレクトリの直下にcvsというディレクトリを作成しています。

#mkdir /cvs
3.2. レポジトリ用のディレクトリを作成

3.1で作成したディレクトリの下にレポジトリ(CVSROOT)となるディレクトリを作成します。ここではwatashitekiというディレクトリを作成しています。レポジトリ以下のディレクトリは、cvsuserグループに所属しているユーザが書き込みできるように、グループに書き込み権限をつけておきます。

#cd /cvs
#mkdir watashiteki
#chown cvsadmin:cvsuser watashiteki
#chmod 775 watashiteki
3.3 レポジトリを初期化

cvsadminユーザでcvs initコマンドを実行し、レポジトリを初期化します。

$su - cvsadmin
password:
$cvs -d /cvs/watashiteki/ init

/cvs/watashitekiの下に"CVSROOT"ディレクトリができます。これはCVSのバージョン管理用のディレクトリで、普段は意識する必要はありません。(触ってはいけません。)

4. ソースを用意

ここでは既に初期バージョン用のソースファイルが用意されていることを想定して、そのファイルをバージョン管理に追加することとします。

適当なディレクトリ(例えば/home/username/tmp)に、CVSで管理したいファイル(ディレクトリ構造)を用意します。そして用意したディレクトリに移動し、cvs importコマンドを実行します。この作業はディレクトリを用意した個々のユーザアカウントで行います。

$cd /home/cvsadmin/tmp
$cvs -d /cvs/watashiteki import -m "Initial creation." . maplesoft creation

cvs importコマンドにはいろいろなオプションがありますが、ここではの次の書式を使っています。

$cvs -d [レポジトリのパス] import -m [コメント] [ディレクトリ] [ベンダー名] [初期バージョンのタグ]

/cvs/maplesoft以下に、/home/cvs/admin/tmp以下のファイルがimportされ、/cvs/maplesoft以下のファイル名に",v"がついていることを確認します。",v"が付いているファイルは、バージョン管理されていることになります。

正しくimportされたことが確認できれば、元のディレクトリは削除してかまいません。

$rm -rf /home/cvsadmin/tmp

以上でサーバ側の初期設定が完了しました。一度ここまでやってしまえば、後からファイルを追加したり削除したりする作業はクライアント編でご紹介するクライアント(eclipse)側からGUIで行えるので、shellからcvsコマンドを実行する必要はなくなります。

>>CVSの初期設定 ~クライアント編~ へ

最終更新日: 2011年 6月 27日(月曜日) 01:46
くらち たかよし

くらち たかよし

モバイル・Webアプリ作家。最近は主にiPhoneアプリ制作を手がける。企画から、UIデザイン、設計、実装、テスト、多言語対応、ユーザーサポートまでを1人〜数人の個人で行う全人的開発手法の確立を目指している。

使う言語はObjective-C, C++, C#, Java, PHPなど。Web関連で使うものはCakePHP, MySQL, Joomla! CMSなど。デザインはシロウトながらPhotoshopとIllustratorをなんとかがんばって使う。

場所や時間に縛られない、インターネット時代の新しい働き方、自由な生き方を模索中。海外移住、低予算&低リスク起業、キャリアデザイン、心理学などにも興味あり。

Web: awaresoft.jp/