Sun WorkShop TeamWare ユーザーズガイド ホーム目次前ページへ次ページへ索引


第 8 章

フリーズポイントツールの使用方法

フリーズポイントツールを利用して、ワークスペース内のファイルの「スナップショット」を保存し、後でそのときのファイルを抽出できます。

この章は、次の節で構成されています。

フリーズポイントツールの概要

ソフトウェアの開発過程では、作業の主な時点での「フリーズポイント」を作成しておくと便利です。これらのフリーズポイントはプロジェクトの「スナップショット」の役割を果たし、プロジェクトの主な時点での状態を後で復元できます。

プロジェクトの状態を保存する方法として、標準のバックアップユーティリティを使用してプロジェクト階層のコピーをそのまま作成するという方法があります。この方法は効果的ですが、大量の記憶資源と時間を消費します。フリーズポイントツールを使用することによって、わずかな記憶資源でフリーズポイントを迅速かつ簡単に保存できます。

この章では、グラフィカルユーザーインタフェース (GUI) 形式のフリーズポイントツールを説明します。フリーズポイントツールは、コマンド行から利用することもできます(第 11 章を参照) 。

フリーズポイントツールの仕組み

フリーズポイントツールによって、ワークスペースからフリーズポイントファイルを作成し、後でそのフリーズポイントファイルを使用して、ワークスペースに含まれていたファイルおよびディレクトリ階層を復元できます。デフォルトでは、フリーズポイントツールはファイルとディレクトリだけを抽出します。すなわち、ファイル履歴を無視して各ファイルのデフォルトのデルタだけを取り出します。ただし、フリーズポイントツールには、すべての抽出ファイルの履歴を含むワークスペースを復元するオプションも用意されています。

作成

フリーズポイントファイルを作成するには、「フリーズポイント」ウィンドウの「ディレクトリとファイル」区画にディレクトリとファイルを指定します (図 8-2 を参照)。フリーズポイントツールはディレクトリ階層を再帰的に下降し、各 SCCS 履歴ファイルに含まれる最後にチェックインされたデルタを検出します。その後それらのファイルのリストと、各デルタの一意の数値識別子から構成されるフリーズポイントファイルを作成します (「フリーズポイントファイルの形式」を参照) 。

フリーズポイントツールは、ファイルの最後にチェックインされたデルタを保存します。このデルタは、デフォルトのデルタと同じである場合も、異なる場合もあります。次の例では、デフォルトのデルタは 1.3 です。最後にチェックインされたデルタが 1.2.1.1 の場合、フリーズポイントツールが保存するのは、その 1.2.1.1 です。

図 8-1   フリーズポイントツールが保存するデルタ

抽出

フリーズポイントファイルを使用して、ファイルを抽出 (回復) できます。フリーズポイントファイルからファイルを抽出するには、フリーズポイントファイルの名前、デルタの抽出元のディレクトリ階層のパス名 (元の階層と異なる場合)、および復元するソース階層を置くディレクトリを指定します。


注 - フリーズポイントファイルは単に相違のリストです。このため、フリーズポイントファイルから抽出を行うには、元のワークスペース (または、その親か子) が存在している必要があります。

抽出では、フリーズポイントファイルに含まれている情報に基づいて、新しいディレクトリ階層が作成されます。新しい階層は、元の履歴ファイルに定義されているファイルで構成されます。抽出時にワークスペースを作成するオプションを選択していない場合は、履歴ファイルそのものは復元されません。デルタは元のソースワークスペースに置かれている履歴ファイルから抽出されます。

ソースワークスペース

ソースワークスペースとは、フリーズポイントファイルの作成元である SCCS 履歴ファイルが含まれるディレクトリ階層のことです。通常、このソースワークスペースから、後でファイルが抽出されて階層が再作成されます。抽出を実行するときに、別のソースディレクトリを指定することもできます。

抽出先ディレクトリ

抽出先ディレクトリとは、フリーズポイントファイルに示されているファイルを抽出するときの最上位のディレクトリです。このディレクトリのパス名は、「フリーズポイント」ウィンドウの「抽出先のディレクトリ」フィールドに指定します。

フリーズポイントツールの起動

フリーズポイントツールを起動するには、次の 2 つの方法があります。

「フリーズポイント」ウィンドウの「作成」タブが表示されます (図 8-2 参照)。


図 8-2   「フリーズポイント」ウィンドウの「作成」タブ

フリーズポイントツールの「作成」タブには、表 8-1 に示す項目があります。

表 8-1   フリーズポイントの「作成」タブの項目  
項目 説明
「ファイル」メニュー フリーズポイントツールを終了するコマンドが表示されます。
「表示」メニュー 「出力を表示」コマンドが表示されます。状態メッセージやエラーメッセージの表示や保存ができます。
「TeamWare」メニュー 他の TeamWare ツールを起動するコマンドが表示されます。
「ヘルプ」メニュー ヘルプを表示するコマンドがあります。
「フリーズポイントファイルの更新」
チェックボックス
このチェックボックスを選択すると、新しいフリーズポイントを作成せずに既存のフリーズポイントファイルを更新します。
「デフォルトワークスペースの使用」
チェックボックス
このチェックボックスを選択すると、フリーズポイントファイルに指定されているワークスペースが使用されます。
「フリーズポイントファイル」フィールド フリーズポイントファイルの絶対パス名を指定します。
「ワークスペース」
フィールド
ソースワークスペースを指定します。
「ディレクトリとファイル」区画 フリーズポイントファイルに保存するファイルおよびディレクトリが一覧表示されます。
「ファイル追加」
ボタン
「ファイル追加」ダイアログが開き、「ディレクトリとファイル」区画に追加するファイルを選択できます。
「全ディレクトリの読み込み」ボタン ワークスペースのディレクトリ全体を読み込みます。
「すべてを選択」
ボタン
「ディレクトリとファイル」区画に示されているファイルおよびディレクトリをすべて選択します。
「すべてを選択解除」
ボタン
「ディレクトリとファイル」区画に示されているファイルおよびディレクトリすべての選択を解除します。
「削除」 ボタン 選択した項目をリストから削除します。
「コメント」区画 フリーズポイントファイルに含めるコメントを指定できます。
「作成」ボタン フリーズポイントファイルを作成して、作成に関するメッセージが含まれた「フリーズポイント出力」ダイアログボックスを表示します。


フリーズポイントファイルの作成

フリーズポイントファイルを作成する手順は次のとおりです。

1. 「ワークスペース管理」ウィンドウから「TeamWare」 「フリーズポイント」を選択し、「フリーズポイント」ウィンドウを開きます。

「作成」タブが表示されます (図 8-2 を参照)。

2. 「フリーズポイントファイル」フィールドにフリーズポイントファイル名を入力します。デフォルトのファイル名である freezepoint.out をそのまま使用することもできます。

フリーズポイントツールを起動すると、「フリーズポイントファイル」フィールドに自動的に freezepoint.out が表示されます。このファイル名の前には、フリーズポイントツールを起動したディレクトリのパス名が付けられています。このフィールドを書き換えて任意のフリーズポイントファイルのパス名を入力できます。絶対パス名ではないパス名は、フリーズポイントツールを起動したディレクトリに対する相対パス名とみなされます。

3. 「ワークスペース」フィールドにソースワークスペース名を入力します。

フリーズポイントツールを起動すると、「ワークスペース」フィールドに、 CODEMGR_WS 環境変数で指定されているワークスペースが自動的に設定されます。この変数の設定がなく、フリーズポイントツールを起動したディレクトリがワークスペース内の階層であった場合は、そのワークスペースのパス名が「ワークスペース」フィールドに設定されます。

4. 「ディレクトリとファイル」区画に、保存するディレクトリとファイルのリストを作成します。

「ファイル追加」ボタンをクリックして、「ファイル追加」ダイアログボックスを開きます。
  1. 保存するファイルを選択します。
    ファイル名をクリックして選択状態にします。Shift キーを押しながらクリックすることによって、複数のファイルをまとめて選択することもできます。

  2. 「リストにファイルを追加」をクリックして、選択したファイルを「ディレクトリとファイル」区画に追加します。
    「全ディレクトリの読み込み」ボタンをクリックすると、「ディレクトリとファイル」区画に「./」と表示されます。これは、ワークスペース階層全体が保存対象になることを示しています。

5. 「コメント」区画にコメントを入力します (省略可)。

このコメントはフリーズポイントファイルに格納され、後で参照できます。

6. 「作成」ボタンをクリックします。

「フリーズポイント」ウィンドウの左下のカウンタに、フリーズポイント処理の進行状況が表示されます。

フリーズポイントファイルの更新

フリーズポイントファイルを更新する手順は次のとおりです。

1. 「ワークスペース管理」ウィンドウから「TeamWare」 「フリーズポイント」を選択し、「フリーズポイント」ウィンドウを開きます。

2. 「フリーズポイントファイルの更新」のチェックボックスをクリックします。

3. 「フリーズポイントファイル」フィールドにフリーズポイントファイル名を入力します。デフォルトのファイル名である freezepoint.out をそのまま使用することもできます。

4. 「ワークスペース」フィールドの右側にある「...」ボタンをクリックしてワークスペースを選択するか、「ワークスペース」フィールドにワークスペース名を入力します。

5. 「ファイル追加」をクリックして、「ディレクトリとファイル」リストにファイルとディレクトリを追加します。

6. 「コメント」区画にコメントを入力します (省略可)。

7. 「更新」をクリックします。

既存のフリーズポイントファイルに指定されているワークスペースをフリーズポイント処理する場合は、「デフォルトワークスペースの使用」チェックボックスを選択します。

ファイルの抽出

フリーズポイントファイルに記述されているソース階層を新たに抽出する手順は次のとおりです。

1. 「ワークスペース管理」ウィンドウから「TeamWare」 「フリーズポイント」を選択し、「フリーズポイント」ウィンドウを開きます。

「作成」タブが表示されます。

2. 「抽出」タブをクリックします。

「抽出」タブが表示されます (図 8-4 を参照)。

3. 「フリーズポイントファイル」フィールドに既存のフリーズポイントファイルのパス名を入力します。

絶対パス名でないパス名は、フリーズポイントツールを起動したディレクトリに対する相対パス名とみなされます。

4. 「すべて抽出」または「部分抽出」ラジオボタンを選択します。

「すべて抽出」では、凍結されたファイルセット全体が抽出されます。「部分抽出」では、指定したサブセットが抽出されます。ワークスペースを作成するかどうかに関係なく、全抽出または部分抽出のいずれかを選択する必要があります。

5. 凍結ファイルの SCCS 履歴を含むワークスペースを作成するには、「ワークスペースの作成」チェックボックスを選択します。

6. 「フリーズポイントの抽出元」の 3 つのラジオボタンのいずれかを選択して、ソースワークスペースを指定します。

7. 「抽出先のディレクトリ」フィールドに、新しい (抽出した) 階層を置くディレクトリのパス名を入力します。

絶対パス名でないパス名は、フリーズポイントツールを起動したディレクトリに対する相対パスとみなされます。
抽出先ディレクトリには、新しいディレクトリと既存のディレクトリのどちらでも指定できます。抽出先ディレクトリに既存のディレクトリを指定した場合は、警告メッセージが表示されるため、操作の確認を行う必要があります。

8. 「抽出」ボタンをクリックして、抽出を開始します。

「部分抽出」オプションを選択した場合は、ダイアログが開き、フリーズポイントファイルに含まれているソースファイルのリストが表示されます。リストから抽出するファイルを選択してください。
「抽出」ボタンをクリックすると、フリーズポイントファイルに示されている各ソースファイルに対して SCCS get が実行されます。抽出されるファイルのバージョンは、フリーズポイントファイルの SMID で指定されているバージョンです。抽出された g- ファイルは、抽出先のディレクトリに書き込まれます。「ワークスペースの作成」オプションを選択した場合は、SCCS 履歴も抽出先ディレクトリに書き込まれます。

「フリーズポイント」ウィンドウの左下のカウンタに、抽出処理の進行状況が表示されます。

図 8-3   フリーズポイント処理の進行状況


注 - 抽出の際にファイルの名前変更や削除などが原因でファイルが見つからない場合は、抽出は中止され、エラーとなったエントリの名前が表示されます。この場合、フリーズポイントファイルを編集して、エラーとなったエントリを削除する必要があります。名前が変更されたファイルの新しい名前を確認する方法については、freezepointfile(4) のマニュアルページを参照してください。


図 8-4   「フリーズポイント」ウィンドウの「抽出」タブ

フリーズポイントの「抽出」タブには、表 8-2 に示す項目があります。

表 8-2   フリーズポイントの「抽出」タブの項目  
項目 説明
「ファイル」メニュー フリーズポイントツールを終了するコマンドが表示されます。
「表示」メニュー 「出力を表示」コマンドが表示されます。
「TeamWare」メニュー 他の TeamWare ツールを起動するコマンドが表示されます。
タブ 「フリーズポイント」ウィンドウの「作成」タブと「抽出」タブを切り替えることができます。
「すべて抽出」
ラジオボタン
フリーズポイントファイルのセット全体をすべて抽出します。
「部分抽出」
ラジオボタン
フリーズポイントファイルのセットの一部を抽出します。
「ワークスペースの作成」チェックボックス フリーズポイントファイルから TeamWare のワークスペースを作成します。
「フリーズポイントファイル」フィールド フリーズポイントファイルの絶対パス名を指定します。
「ワークスペース」フィールド ソースワークスペースを指定します。
「抽出先のディレクトリ」フィールド 新しい階層を置くディレクトリのパス名を指定します。
「フリーズポイントの抽出元」
ラジオボタン
「フリーズポイントファイルからデフォルトを使用」 フリーズポイントファイルで指定されているソースワークスペースのパス名が使用されます。

「ユーザー指定」 ワークスペースのパス名を入力します。

「デフォルトとコメントを表示」 ソースワークスペースのパス名が使用されます。


フリーズポイントの自動作成

ブリングオーバーやプットバックなどの、特定のトランザクションを実行するたびに、フリーズポイントを作成するように設定できます。

自動フリーズポイントを設定する手順は次のとおりです。

1. 「ワークスペース管理」ウィンドウからワークスペースを選択します。

2. 「ワークスペース」 「属性」を選択します。

3. 「フリーズポイント」タブを選択します。

「ワークスペース属性」ダイアログボックスの「フリーズポイント」タブが表示されます (図 8-5 を参照)。

4. 「フリーズポイント」タブは、フリーズポイントを作成する時期を示すオプションのリストです。適切なオプションの「はい」ラジオボタンを選択します。

5. 「了解」をクリックします。


図 8-5   「ワークスペースの属性」ダイアログボックスの「フリーズポイント」タブ

フリーズポイントツールによって、Codemgr_wsdata/Freezepoints ディレクトリ下のワークスペースにフリーズポイントファイルが作成されます。自動フリーズポイント機能は、Codemgr_wsdata/Freezepoints/YYYY/MM/DD という形式 (YYYY は年、MM は月、DD は日) で、フリーズポイントファイルが作成された日ごとにディレクトリを作成します。フリーズポイントファイルの名前は、HHMMSS.fp.Z という形式 (HH は時、MM は分、SS は秒) になります。拡張子の .Z は、自動フリーズポイントファイルが /bin/compress コマンドで圧縮されていることを示します。

フリーズポイントファイルの形式

フリーズポイントファイルの内容は、通常のテキストエディタを使用して表示できます。

フリーズポイントファイルは、保存対象のワークスペース階層中の SCCS 履歴ファイルに含まれるデフォルトのデルタのリストからなるテキストファイルです。階層を後で復元するときに、フリーズポイントツールはこれらのエントリを、元の履歴ファイルと、フリーズポイントファイルの作成時点でデフォルトだったデルタへのポインタとして使用します。

これらのデルタの識別には、標準の SCCS デルタ ID (SID) の代わりに、新しい識別子、SCCS マージ可能 ID (SMID) が使用されます。SMID を使用すると、ワークスペース管理ツールの更新ブリングオーバートランザクションの中で SID が変更されたファイルを、フリーズポイントツールで正しく処理できます。詳細は、「SCCS マージ可能 ID について」を参照してください。

フリーズポイントファイルには次の情報が含まれています。

以下に、フリーズポイントファイルの例を示します。この例には、3 つのエントリがあり、残りの行はコメントになっています。

# Format:
# sfilename (previously SID) date time user hex hex hex hex hex hex hex hex
#
# First four hex's are the SCCS Mergeable Id of the root delta of the
# containing delta tree.
# Last four hex's are the SMID of the desired delta.

 
#sdata=99/03/10 09:20:26
#sdata=SunPro Code Manager data about conflicts, renames, etc...
#sdata=Name history : 1 0 list.c
#leaf=9f7398c4 cc06b ff6ce975 10b7656b
#leaf=f6ea91e2 bbd23cd1 3e052ed1 ca969a9e
./list.c (previously 1.5) 99/06/21 14:04:22 toriw 11db401e cd439eeb ca3782dc 
1aa255e9 97701645 bda0137e d24a3d6b 69f31f25
#sdata=99/03/10 09:20:24
#sdata=SunPro Code Manager data about conflicts, renames, etc...
#sdata=Name history : 2 1 testdir/index.html
#sdata=Name history : 1 0 index.html
#leaf=1fffddc9 85c63827 8172c838 52ba549b
./twtest/testdir/index.html (previously 1.6) 99/06/08 16:21:37 toriw 3ed3beea 
bb06794d 3f235871 dd89b225 d10d3db7 b8384098 3bb361a0 32e64f5e
#sdata=99/03/10 09:20:24
#sdata=SunPro Code Manager data about conflicts, renames, etc...
#sdata=Name history : 2 1 testdir/routine
#sdata=Name history : 1 0 routine
./twtest/testdir/routine1fs (previously 1.2) 99/03/12 09:11:10 toriw e59da845 
d7e3b7e6 f9e7765f 43d41389 89c058c1 f758edad 81fc5a22 576e5015


サン・マイクロシステムズ株式会社
Copyright information. All rights reserved.
ホーム   |   目次   |   前ページへ   |   次ページへ   |   索引