Gentoo新人開発者教育
1.
CVSを利用する
はじめに
このガイドをCVSの利用マニュアルにするつもりはありません。
CVSの利用に関しては、CVS infoページやhttp://www.gentoo.org/doc/en/cvs-tutorial.xml(日本語訳)を参照してください。
代わりに、このガイドでは特にGentooのebuildツリーにおけるCVSとRepomanの利用を中心に説明していきます。
設定
普通、~/.cvsrcに以下の行があれば十分です。
コード表示 1.1: ~/.cvsrc |
cvs -q -z0
diff -u -b -B
checkout -P
update -d -P
|
ダイジェストが正しいか確認するために、FEATURES設定にはcvsを設定してください。
最後に、CVS利用者の多くは圧縮(-z#)を使うでしょう。
ダイヤルアップ接続でない開発者は-z0を使うようお願いしています。
CVSリポジトリの内容やCVSサーバの負荷にもよるので、圧縮しなくても速度が向上していることが実感できます。
チェックアウト
GentooのCVSリポジトリには有用なモジュールがいくつかあります。
ebuildは、gentoo-x86モジュールに保管されています。
gentoo-srcモジュールには、実用的なプロジェクトから不活発なプロジェクトまで様々あります。
gentooモジュールには、Webサイト用のXML、ドキュメント、開発者のディレクトリ、開発者の画像用などがあります。
コード表示 1.2: gentoo-x86をチェックアウトする |
# cvs -d username@cvs.gentoo.org:/var/cvsroot co gentoo-x86
|
ツリーで作業をする前には常に、アップデートして変更をチェックし、パッケージの衝突を防ぐとよいです。
ツリー全体をアップデートしたくなければ、ツリーの任意のサブディレクトリだけをアップデートすることもできますが、ときどきツリー全体をアップデートしてください。
コード表示 1.3: gentoo-x86でアップデートする |
# cd gentoo-x86
# cvs update
|
追加と削除
もしapp-miscのfooという新しいパッケージを追加する準備ができている場合は以下の通りにします。
コード表示 1.4: 追加例 |
# cd CVSROOT/app-misc
# cvs update
# mkdir foo
# cvs add foo
# cd foo
# cp /path/to/foo-1.0.ebuild ./
# ebuild foo-1.0.ebuild digest
# cvs add foo-1.0.ebuild ChangeLog files
# cvs add files/digest-foo-1.0
|
また、必ずmetadata.xmlファイルにメンテナ情報を追加してください。
詳しい情報は、metadata guideをご覧ください。
この時点で、コミット(commit)する準備はできています(後述のセクション、コミットを参照してください)。
でも、foo-1.1がリリースされたときにfoo-1.0を削除したい場合はどうすればよいでしょうか?
コード表示 1.5: 削除例 |
# cd CVSROOT/app-misc/foo
# cvs update
# rm foo-1.0.ebuild files/digest-foo-1.0
# cvs remove foo-1.0.ebuild files/digest-foo-1.0
|
ということで、コミットする準備ができました(後述のセクション、コミットをご覧ください)。
コミット
CVSにコミットする場合、cvs commitよりrepoman commitを使うほうが多いです。
repomanは、基本的なチェックを実行し、manifestを作成する品質保証(QA)ツールです。
もしrepomanの出力がサッパリ理解できないなら、man repomanを見てください。
また、鍵のパスフレーズを繰り返し入力することにうんざりするかもしれません。
そこで、keychain(http://www.gentoo.org/proj/en/keychain.xml)が手助けになるでしょう。
コード表示 1.6: commit例 |
# repoman scan
# repoman commit
|
2.
雑則
mirrorにファイルを置く
新しいファイルをGentoo mirrorのdistfilesに置く手続きはとても簡単です。
dev.gentoo.orgの/space/distfiles-localに新しいファイルをコピーしてください。
メール
開発者が自分のメールを管理できるインフラがあります。
http://www.gentoo.org/proj/en/infrastructure/dev-email.xml(日本語訳)には、@gentoo.orgメール設定の説明があります。
休暇
Gentoo開発者は休暇を取ることがよくあります。大学の試験やハネムーンでは開発から少し離れる必要があるでしょう。
Gentooから離れた生活を過ごすのは歓迎ですが、開発から離れたこと、戻ってきたことは把握しておきたいです。
開発から離れるときには、自分が係わっている開発グループ(例えばgentoo-releng@gentoo.orgであったりsparc@gentoo.orgであったり)に連絡してください。
あなたが開発から離れたことをグループに知らせ、不在時にパッケージを更新する必要がある場合には彼らに連絡が行くでしょう。
コード表示 2.1: 休暇の例 |
# touch ~/.away
# echo "I've gone to the mountains, will be away from June 29 - Aug 4th, \
contact zhen, cshields, or klieber in my absence." > ~/.away
# rm ~/.away
|
|