cvs [checkout aborted]: /home/hogehoge/cvsroot/CVSROOT: Permission denied

cvsでチェックアウトを行うと以下のエラーとなった!

$ cvs checkout
cvs [checkout aborted]: /home/hogehoge/cvsroot/CVSROOT: Permission denied

パーミッションの問題ですよね?

ってことで、確認したら /home/hogehoge のパーミッションがおかしかったので、
これを適切に直したらでなくなりました!

$ chmod 755 /home/hogehoge

CVSの使い方

1. リポジトリの作成

$ cvs -d /home/hogehoge/cvsroot init

2. CVSROOTの設定

.bashrcなどに以下のように設定することにより、
毎度指定しなくとも済みます。
export CVSROOT=/home/hogehoge/cvsroot

3. モジュールの登録

登録したいファイルがあるディレクトリに移動し、
以下のようにしてモジュールを登録します。

$ cvs import -m “yoroshiki” init
N /mail_monitor.php

No conflicts created by this import

-mの引数はログに残すメッセージ

4. モジュールの取得

$ cvs checkout

5. モジュールの更新

$ cvs commit -m “ログに残すメッセージ”
or
$ cvs ci -m “ログに残すメッセージ”

6. 作業ファイルを更新

$ cvs update -d

7. ファイルの追加

リポジトリのリストに追加
$ cvs add
ファイルをリポジトリにコピー
$ cvs commit -m “”

8. ファイルの削除

ファイルを削除
$ rm
リポジトリのリストから削除
$ cvs remove 不要ファイル名
リポジトリからファイルを削除
% cvs commit -m “”

9. 登録ファイル一覧を見る

$ cvs status
cvs status: Examining .
===================================================================
File: index.php Status: Up-to-date

Working revision: 1.1.1.1 Wed May 9 07:14:55 2012
Repository revision: 1.1.1.1 /var/cvsroot/hogehoge/index.php,v
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)

===================================================================
File: lib.php Status: Up-to-date

Working revision: 1.2 Tue May 15 07:21:13 2012
Repository revision: 1.2 /var/cvsroot/hogehoge/lib.php,v
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)

10. ソースへ、バージョンなどの情報を埋め込む。

・$Date$
最終コミット日時

・$Id$
ファイル名、リビジョン、日時、作者

・$Revision$
リビジョン

・$Source$
リポジトリファイルのパス

・$Log$
蓄積されたそのファイルのログメッセージ

・$Author$
著者