=begin
=CVS でプロジェクトを始める
((::))
* 編集者: 森川靖大
* 最終更新: 2005/11/08 (森川靖大)
#* 最終更新: 2004/09/30 (森川靖大)
* 新規作成: 2004/09/28 (森川靖大)
((::))
((:
:))
((::))
Contents
<<< cvs-project.hindex.rd
((:
:))
((:
:))
== プロジェクト開始
プロジェクトを開始する. そのために, まずは cvsroot を指定する
環境変数 CVSROOT と www.gfd-dennou.org へのアクセス方法を指定する
環境変数 CVS_RSH を設定する.
(これらを指定しなくともコマンドに直接指定する方法もある).
$ export CVSROOT=:ext:www.gfd-dennou.org:/GFD_Dennou_Club/ftp/arch/hoge/cvsroot
$ export CVS_RSH=ssh
なお, www.gfd-dennou.org 内で作業をおこなう場合には
$ export CVSROOT=/GFD_Dennou_Club/ftp/arch/hoge/cvsroot
のみでも構わない.
次に, プロジェクトとして含むファイル群の位置まで移動する. 仮に
/home/foo/hoge 以下にプロジェクトのソース, ドキュメントなど全て含め
て置いてあるならば, まずそこへ移動する.
$ cd /home/foo/hoge
ここで cvs import コマンドを実行するとカレントディレクトリを先頭と
して全てのファイルがインポートされる. 余計なファイルは全て消してお
くこと. ( ドットファイル ( (({.***})) ) は ls では見えないので
ls -a でちゃんと探すこと).
掃除が終ったらプロジェクトを開始させる.
開始は以下のコマンドでおこなう.
$ cvs import -m \
"HOGE (Hisotry Open General Engine) \
Version 0 (Tentative Version)" hoge0 hoge Initial
↑ ↑ ↑ ↑
コメント プロジェクト名 | リリースタグ
|| |
ディレクトリ名 |
ベンダータグ
「プロジェクト名」はモジュールとも呼ばれるもので, これがリポジトリ
内部での置場の名前にもなる. ディレクトリ名かプログラム名でも書いて
おけばよかろう.
「ベンダータグ」はリポジトリを共有している場合にソースのベンダーす
なわち作者あるいは作成団体をあらわすものらしい. 個人で使っているな
ら自分のログイン名でも書いておけばいいだろう.
「リリースタグ」は開始時の「タグ」である. 「タグ」は複数のファイル
から成るであろうプログラムのある段階での「スナップショット」をとっ
ておくためのものであり, この「リリースタグ」は最初の「スナップショッ
ト」である.
上記コマンドの結果, 「No conflicts created by this import」 というような
メッセージが出れば, インポート成功である.
== プロジェクトのパーミッションの確認
プロジェクトのディレクトリのパーミッションを確認しておく.
$ ssh www.gfd-dennou.org
$ cd /GFD_Dennou_Club/ftp/arch/hoge/cvsroot
$ ls -l
drwxrwsr-x 3 foo hoge 53 8月 31 19:40 hoge0/
上記のようにグループが hoge で権限が rws の場合は問題ない.
もしそうでないのなら, 以下のコマンドでグループとパーミッションを
変更すること.
$ chgrp hoge hoge0
$ chmod g+s hoge0
$ chmod g+w hoge0
なお, もしも hoge0 が上記のようなパーミッションになっていなかった
場合, それよりも下層ディレクトリのパーミッションもそれと同様な
可能性がある. それらに関してもグループとパーミッションを設定すること.
調べるには以下のコマンドが便利であろう.
$ ls -dl `find -type d`
* プロジェクト以下にある「ファイル」に関しては (グループは hoge
である必要があるが) パーミッションは (({-r--r--r--}))
で問題ない. cvs コマンドを介せば, 正しく commit, add, remove
などが可能である.
== プロジェクトの削除
正しくはどうしたら良いのか不明.
リポジトリのmodule ディレクトリを rm -fr する?
((:
:))
=end