Download presentation
Presentation is loading. Please wait.
1
情報システム構築 -グループ分けとCVSの初期設定-
金曜4校時 掛下哲郎 大月美佳
2
今日の講義内容 テーマ決定とグループ分け CVSの使い方の演習 何を作りたいか話し合おう テーマごとにグループに分かれよう
演習室に移動してやる
3
作るものを決めよう 必須条件 対象領域は自由 指定の開発環境 指定の言語、ツールを使用 学科のコーディング規約を厳守
UNIX OS(Solaris or Red Hat Linux) 指定の言語、ツールを使用 C++ (G++), CVS, Make, CppUnit 学科のコーディング規約を厳守 GUIはWebインターフェース 対象領域は自由
4
たとえば ゲームでも可 案が出ない場合は上のどれか アドベンチャーゲーム 恋愛シミュレーションゲーム (対戦)カードゲーム
登録式トーナメントゲーム 案が出ない場合は上のどれか リアルタイム性の強いものは無理と思われる
5
とりあえずグループ分け 10名×3グループくらい テーマが絞れないようならもう少し
6
CVSとは バージョン管理システムの一種 ソースコード共有が可能 参考書
「バージョン管理システム(CVS)の導入と活用」 (ソフトバンクパブリッシング) 鯉江 英隆他著 ISBN 「入門CVS」(秀和システム) 大月美佳著 ISBN
7
バージョン管理システム ファイルの「版(バージョン、リビジョン)」を 管理するシステム 商用システム オープンソース
Microsoft VSS, Envy, PVCS, etc. オープンソース RCS, CVS, subversion, etc.
8
CVSの特徴 複数のファイルをまとめて管理 複数人数で共有可能 テキストの差分管理 RCSではファイル単位の管理 ディレクトリ操作には弱い
排他制御ではなく競合解決 秘密主義には向かない テキストの差分管理 RCSの機能に基づく バイナリファイルはちょっと苦手
9
CVSの用語 1 リビジョン RCSファイル モジュール バージョンと同義 数は自動的に振られる リビジョン間の差分を保存しておくファイル
中央に貯蔵される
10
CVSの用語 2 リポジトリ 作業コピー 競合 モジュールの貯蔵場所 ローカル、遠隔からアクセス可能
作業のために手元に取り出されたファイル群 独立しており作業を妨げない 競合 作業コピー間で生じた矛盾 ある程度マージ後人間による解決に委ねる
11
差分の管理イメージ
12
CVSのイメージ図 作業コピー モジュール RCSファイル
13
演習室に移動 以後の作業は演習室で行う 速やかに移動すること
14
CVSにログインしてみよう X端末にログイン CVSに遠隔ログインしてみる [~]% cvs –d
開始 X端末にログイン CVSに遠隔ログインしてみる [~]% cvs –d login 今回は仮パスワードを使用する 履修カード未提出者について ここのユーザID
15
モジュールを登録してみよう ディレクトリを作る ファイルを作る インポートする …
[~]% mkdir test ファイルを作る [~] % cd test; cat > README.txt … インポートする [~] % cvs –d import 9?s??? CS_SAGA_U SYSDEVTEST01
16
作業コピーを取り出してみよう ディレクトリを移動する チェックアウトする 今さっき登録したモジュール
[~] % cvs –d checkout 9?s??? 共有テスト用モジュール checkout sharetest
17
ファイルを編集してみよう 個人用作業コピーの分 共有テスト用作業コピーの分 [9?s???]% cd ~/sharetest
[9?s???] % vi README.txt …など 共有テスト用作業コピーの分 [9?s???]% cd ~/sharetest [sharetest]% vi README.txt
18
更新してみよう 個人用作業コピーの分 共有テスト用作業コピーの分 表示はどうなった? [sharetest]% cvs update
[9?s???] % cvs update 表示はどうなった? 共有テスト用作業コピーの分 [sharetest]% cvs update
19
ファイルをコミットしてみよう 個人用作業コピーの分 共有テスト用作業コピーの分
[9?s???]% cvs commit –m “Test commit” README.txt 共有テスト用作業コピーの分 競合の解消が必要
20
更新してみよう 個人用作業コピーの分 共有テスト用作業コピーの分 表示はどうなった? [sharetest]% cvs update
[9?s???] % cvs update 表示はどうなった? 共有テスト用作業コピーの分 [sharetest]% cvs update
21
ファイルを加えてみよう 個人用作業コピーの分 共有テスト用作業コピーの分 …Cntl-D
[9?s???] % cat > newfile.txt …Cntl-D [9?s???] % cvs add –m “New file” newfile.txt 共有テスト用作業コピーの分 ユーザIDのファイルを作成 例:98s001.txt
22
更新してみよう 個人用作業コピーの分 共有テスト用作業コピーの分 注意:追加しただけではまだリポジトリに反映されていない。コミットせよ。
[9?s???] % cvs update 表示はどうなった? 共有テスト用作業コピーの分 同様 注意:追加しただけではまだリポジトリに反映されていない。コミットせよ。
23
ファイルを削除してみよう 個人用作業コピーの分 共有テスト用作業コピーの分 ここで、更新とコミットを行う 表示に注目
[9?s???] % cvs remove –f newfile.txt -fオプションの使用には注意 共有テスト用作業コピーの分 自分が登録したファイルを削除 ここで、更新とコミットを行う 表示に注目
24
ディレクトリを作ってみよう 注意! ディレクトリは一度作ると削除できません 個人用作業コピーの分 共有テスト用作業コピーの分
注意! ディレクトリは一度作ると削除できません 個人用作業コピーの分 [9?s???] % mkdir newdir [9?s???] % cvs add newdir 共有テスト用作業コピーの分 ユーザIDのディレクトリを作成する 例: 98s001
25
更新してみよう 他の作業コピーで追加されたディレクトリ を自分の作業コピーに反映するには →更新でオプション-d
共有テスト用作業コピーでテスト [sharetest] % cvs update -d 補足: -Pをつけると空ディレクトリは取ってこない 比較してみよう
26
時間があれば練習 sharetestおよび自分のモジュール9?s???では自由に 新しいモジュールインポートは避ける
27
作業コピーを放棄してみよう ファイルに変更がないかどうか注意! リリースコマンドを実行する [~]% cvs –d
release –d 9?s??? release –d sharetest
28
CVSからログアウトしておこう 今回はログアウトしておく [~]% cvs –d
logout
29
宿題 WebブラウザでCVS用のパスワードを変更しておくこと プロジェクト名を考えておくこと
プロジェクト名を考えておくこと モジュール名として使用する 英語5~20文字程度 例:MarikoADV
30
推奨 CVSの使用法は練習しておくこと 今回紹介した以外のCVSコマンド →資料、Webを参考にせよ
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.