CVSによるオープンソース開発

CVSによるオープンソース開発

  • ただいまウェブストアではご注文を受け付けておりません。
  • サイズ B5判/ページ数 380p/高さ 24cm
  • 商品コード 9784274064739
  • NDC分類 007.64
  • Cコード C3055

出版社内容情報

【セールスポイント】
バージョン管理システムCVSとオープンソース開発のベストセラー解説書が改名改訂!

【発刊の目的と内容】
 CVS(Concurrent Versions System)は、ソフトウェアのバージョンを管理するためのシステムで、分散開発プロジェクトやドキュメント管理を強力に支援します。特に、ネットワーク上で多数の開発者が共同作業を行うオープンソースプロジェクトでは必須とも言えるツールとなっています。
 本書は、CVSの基本的な使い方から、ブランチの管理やCVSサーバーの構築・管理までをカバーしており、丁寧なチュートリアルと全機能の完全なリファレンスを提供します。さらに、CVSと関連の深いオープンソースソフトウェアの開発手法についても、経験者の視点から豊富なノウハウを提供します。プログラマはもちろん、ドキュメントやウェブコンテンツの管理を合理化したいと考えている人にとっても、本書はきっと役に立つことでしょう。

【購読対象者】
プログラマ(プラットフォームや言語を問わない)
プロジェクトマネージャ
オープンソース開発に興味のある人

【詳細目次】
目次

著者紹介
謝 辞
日本語版監訳者より
はじめに
■第1章 オープンソース開発とCVSの関係
◆1.1 フリーソフトウェアとは何か
1.1.1 オープンソースソフトウェア
1.1.2 オープンソースライセンス
1.1.3 オープンソースビジネスモデル
◆1.2 すべての始まり
1.2.1 Stallmanの考え
1.2.2 2種類の開発
◆1.3 CVSとの関係
1.3.1 diffとpatch
1.3.2 RCS
1.3.3 勝者:CVS
◆1.4 オープンソース開発の原則とそれに役立つCVSの機能
◆1.5 フリーソフトウェアの原動力
1.5.1 必要性
1.5.2 仲間
1.5.3 名誉
1.5.4 お金
1.5.5 派閥は強さの表れ
■第2章 CVSの概要
◆2.1 CVSの基本
2.1.1 CVSは何でないか:ロック-修正-ロック解除モデル
2.1.2 CVSとは何か:コピー-修正-マージモデル
◆2.2 その他のバージョン制御システム
2.2.1 Microsoft VSS
2.2.2 RCSとGNU/RCS
2.2.3 SCCS
◆2.3 CVSでの1日の作業
2.3.1 CVSを起動する
2.3.2 リポジトリへのアクセスと作業環境
2.3.3 新規プロジェクトを開始する
2.3.4 作業用コピーをチェックアウトする
2.3.5 変更を加える
2.3.6 自分(および他人)の作業内容を調べる:updateとdiff
2.3.7 CVSと暗黙的な引数
2.3.8 コミットする
2.3.9 誰が何をやったか調べる(ログメッセージを表示する)
2.3.10 変更内容を調べて元に戻す
◆2.4 その他の便利なCVSコマンド
2.4.1 ファイルを追加する
2.4.2 ディレクトリを追加する
2.4.3 ファイルを削除する
2.4.4 ディレクトリを削除する
2.4.5 ファイルとディレクトリの名前を変更する
2.4.6 オプションの入力疲れを防ぐ
◆2.5 スナップショットを入手する(日付とタグ)
2.5.1 使用できる日付形式
2.5.2 特定の時点にマーク(タグ)を付ける
◆2.6 ブランチ
2.6.1 ブランチからトランクへ変更をマージする
2.6.2 複数のマージ
2.6.3 作業用コピーなしでタグまたはブランチを作成する
■第3章 CVSリポジトリ管理
◆3.1 管理者の役割
◆3.2 CVSの入手とインストール
3.2.1 UNIX用のCVSを入手してビルドする
3.2.2 Windows用のCVSを入手してインストールする
3.2.3 Macintosh用のCVSを入手してインストールする
3.2.4 Windows版とMacintosh版の制限
◆3.3 CVSディストリビューションの中身
3.3.1 情報ファイル
3.3.2 サブディレクトリ
3.3.3 その他の情報源
◆3.4 リポジトリの開始
3.4.1 パスワード認証サーバー
3.4.2 リポジトリ構造の詳細
3.4.3 RCS形式では@記号が常にクォートされる
3.4.4 ファイルを削除すると何が起こるか
3.4.5 CVSROOT/管理用ディレクトリ
◆3.5 その他の情報
■第4章 CVSの高度な機能
◆4.1 基本事項を超えて
◆4.2 電話代わり
4.2.1 「watch」:誰がいつ何をするかを知る
4.2.2 ログメッセージとコミットメール
4.2.3 作業用コピーを削除する
◆4.3 プロジェクトヒストリの鳥瞰図
4.3.1 望遠鏡を使った鳥瞰図:annotateコマンド
◆4.4 キーワード展開の使用
◆4.5 ブランチの使いこなし方
4.5.1 トランクに何度もマージする
4.5.2 蟻継ぎ方式:両方向にマージする
4.5.3 トビウオ方式:簡単な方法
4.5.4 サードパーティソースを追跡する:ベンダーブランチ
◆4.6 CVSの新機能
◆4.7 専門家の領域へようこそ
■第5章 ヒントとトラブルシューティング
◆5.1 問題が起きたら
◆5.2 一般的な原因
5.2.1 作業用コピー管理領域
5.2.2 リポジトリアクセス権
◆5.3 一般的な問題とその解決法
5.3.1 実際に起きた問題と解決法
5.3.2 変わり行く状況
■第6章 ビルド、テスト、リリース
◆6.1 なぜリリースするのか
◆6.2 リリース作業の開始
6.2.1 「コードの詰め込み」効果を避ける
6.2.2 凍結
6.2.3 開発と安定したブランチ
◆6.3 テスト
6.3.1 テスターの採用と維持
6.3.2 テストの自動化
◆6.4 ビルド、インストール、パッケージ化
6.4.1 ビルドとインストール:makeとautoconf
6.4.2 CVSにパッケージ化を手伝わせる
◆6.5 リリース
6.5.1 変更内容を公開する
6.5.2 リリースをCVSに記録する:タグとリビジョン番号
◆6.6 その他の情報
■第7章 CVSを使ったシステム管理
◆7.1 システム管理者の主な仕事
7.1.1 CVSの正しい使い方:バージョン管理
7.1.2 依存ファイル
7.1.3 namedツリー
7.1.4 後退テスト
◆7.2 CVSを使ったシステム管理者のその他の作業
7.2.1 新しいターゲットを作成する
7.2.2 ファイルに関する責任を委任する
7.2.3 ホストに問題が起きたら
◆7.3 ルーターと機器の管理
◆7.4 まとめ
■第8章 オープンソースプロセス
◆8.1 失敗と成功
◆8.2 プロジェクトの開始
8.2.1 便利なものができたらリリースする
8.2.2 パッケージ
8.2.3 プログラムを発表する
◆8.3 プロジェクトの運営
8.3.1 技術的な判定力を養う
8.3.2 誰が保守担当者になるか
8.3.3 グループによる統治
8.3.4 どうしても必要な場合の分岐方法
8.3.5 保守担当者を変える
8.3.6 停止状態
◆8.4 知らないことに目を向ける
■第9章 分散開発の設計
◆9.1 ソフトウェア設計の重要性
◆9.2 市販ソフトウェアの設計とフリーソフトウェアの設計
9.2.1 費用の問題
◆9.3 設計の確定事項
◆9.4 コードの設計
9.4.1 設計文書
9.4.2 コードをファイルとディレクトリに分ける
9.4.3 コードをモジュールに分割する
◆9.5 進化中心の設計
◆9.6 フリーソフトウェア設計の原則
9.6.1 入力を制限しない
9.6.2 一貫したインターフェイスを使う
9.6.3 データ構造体の文書化
9.6.4 移植を可能にする
◆9.7 疑問があるときは慎む
■第10章 CVSで使用できるサードパーティ製ツール
◆10.1 サードパーティ製ツールとは
◆10.2 pcl-cvs:CVSへのEmacsインターフェイス
10.2.1 pcl-cvsをインストールする
10.2.2 pcl-cvsを使う
10.2.3 pcl-cvsでのエラー処理
◆10.3 cvsutils:CVS用の汎用ユーティリティ
10.3.1 Cervisia
◆10.4 cvs2cl.pl:CVSログからGNUスタイルのChangeLogを生成する
◆10.5 cvslock:操作をひとまとめに行うためにリポジトリをロックする
◆10.6 その他のパッケージ
10.6.1 Jalindi Igloo
10.6.2 CVSUp(FreeBSDプロジェクトの一部)
10.6.3 CVSWeb:CVSリポジトリへのWebインターフェイス
10.6.4 CVS contrib/ディレクトリ
◆10.7 独自のツールの作成
■第11章 完全CVSリファレンス
◆11.1 この章の構成と規則
◆11.2 コマンド
11.2.1 CVSコマンドの構文
11.2.2 グローバルオプション
11.2.3 コマンドリスト
◆11.3 キーワード置換(RCSキーワード)
11.3.1 キーワード置換を制御する
11.3.2 キーワードリスト
◆11.4 リポジトリ管理用ファイル
11.4.1 共通構文
11.4.2 リポジトリ管理用ファイルのリスト
◆11.5 実行制御ファイル
◆11.6 作業用コピーファイル
◆11.7 環境変数
■付録A GNU General Public License
■付録B GNU Free Documentation License
■付録C 参考文献
■付録D Windows環境でのCVS
◆D.1 Windows版CVSの使い方
◆D.2 WinCvsの使い方
◆D.3 Windows用CVSサーバー
◆D.4 UNIX用CVSサーバーの日本語対応

索引
監訳者紹介

内容説明

本書は、『CVS―バージョン管理システム―』(2000年6月発行)を改訂したもので、CVSに関する網羅的な解説と、オープンソース開発手法についての実践的なノウハウを提供する。この版では全面的に構成が見直されたほか、ソフトウェアの設定ファイルの版管理を行う際のノウハウも解説されており、さらに充実した内容となっている。

目次

第1章 オープンソース開発とCVSの関係
第2章 CVSの概要
第3章 CVSリポジトリ管理
第4章 CVSの高度な機能
第5章 ヒントとトラブルシューティング
第6章 ビルド、テスト、リリース
第7章 CVSを使ったシステム管理
第8章 オープンソースプロセス
第9章 分散開発の設計
第10章 CVSで使用できるサードパーティ製ツール
第11章 完全CVSリファレンス

著者等紹介

Fogel,Karl Franz[FOGEL,KARL FRANZ]
1971年に生まれる。1995年にJim BlandyとともにCyclic Softwareを創設し、CVSの保守と商用サポートを始めた。Cyclic Softwareを譲った後は、中国南西部に赴いて英語とUNIX/Cプログラミングを1年間教えた。現在彼はシカゴに住み、CollabNetでSubversionプロジェクトのフリーソフトウェアプログラマとして働いている

Bar,Moshe[BAR,MOSHE]
科学修士およびコンピュータサイエンス博士。欧州と南米の大学でコンピュータサイエンスを教えている。数年に渡り、LinuxカーネルやJFSファイルシステム、LinuxのNFS、Mosixクラスタリングカーネル拡張機能など、いくつかのオープンソースプロジェクトに貢献してきた。Linuxカーネルやそのファイルシステム、サイエンティフィッククラスタリングについての著書がある。現在は、世界中の企業のコンサルタントとして活躍している

竹内里佳[タケウチリカ]
(有)トップスタジオ所属の翻訳者。主にコンピュータ書籍の翻訳・編集・監修を手がける。プログラミング、セキュリティ、UNIX、最近ではWindows2000/XP関連など、幅広い分野の翻訳を行っている
※書籍に掲載されている著者及び編者、訳者、監修者、イラストレーターなどの紹介情報です。

感想・レビュー

※以下の感想・レビューは、株式会社ブックウォーカーの提供する「読書メーター」によるものです。

kaizen@名古屋de朝活読書会

90
本当の意味で、複数人で同時に協業して開発したことがないので、CVSの使い方を今一歩理解していなかった。RCSの問題点を解決したのがCVSだとは。逆かと思って、RCSを理解しようとしていた。個人で作業をするにも、CVSは、昨日の私と今日の私と明日の私の協業。使いながら読み進んで理解を深めたい。RTL設計スタイルガイドが、CVS前提で書いている。他のシステムではどうなるかを変換できるように勉強中。2014/04/03

外部のウェブサイトに移動します

よろしければ下記URLをクリックしてください。

https://bookmeter.com/books/218587
  • ご注意事項