ANALYZE
Visual SourceSafe データベースの整合性やエラーを調べて表示し、指定に応じて修復します。Visual SourceSafe 管理者は、毎週、データベースのバックアップをとった上でこのユーティリティを使用し、Visual SourceSafe データベースに問題がないことを確認してください。
管理者は、32 ビットのコマンド ライン ユーティリティを使用して、Visual SourceSafe Version 4.0 以降のデータベースを修復できます。たとえば、Visual SourceSafe データベースに存在することが確実なファイルを選択して [最新バージョンの取得] などのコマンドを使用したときに "ファイルは存在しません" というエラー メッセージが表示された場合は、データベースに問題があります。
管理者は、この問題を分析または修復するために、Analyze.exe をコマンド ラインから手動で実行するか、不在時操作のスクリプトの一部として実行できます。Analyze.exe は、Visual SourceSafe をインストールしたフォルダの下の Win32 フォルダにあります。
Analyze.exe は、2 回実行することをお勧めします。1 回目は、-F オプションを使用し、エラーを発見して修復します。2 回目は、ほかにエラーが残っていないかどうかを確認します。
構文
ANALYZE [-B<フォルダ名>] [-C] [-D] [-F] [-I-] [-V] [-X] [-?] [-H] <データベースの絶対パス | @応答ファイル | ファイルのリスト>
次の表は、コマンドのオプションについての説明です。
オプション | 説明 |
---|---|
-B<フォルダ名> | バックアップ フォルダを指定します。 |
-C | データベースをクリアして圧縮します。この処理は時間がかかる場合があります。 |
-D | 使用されていないファイルを削除します。 |
-F | 検出された矛盾や破損を修復します。 |
-I- | ユーザーからの入力を求めずに操作を続行します。このオプションを指定すると、不在時操作が可能になります。特に指定しない限り、結果ウィンドウは表示されたままになります。 |
-Vn | 出力の詳細を指定します。-V1 は、重大なエラーだけを表示します。-V2 は、重大なエラーと重要度の高いエラーを表示します。-V3 は、すべてのエラーを表示します。-V4 は、すべてのエラーと警告を表示します。-V4 オプションの出力は、[分析結果] ウィンドウの下のペインに表示され、ANALYZE の分析結果に関する詳細な情報が示されます。既定のオプションは -V1 です。-V のように数字を付けないと -V4 と見なされます。 |
-X | ファイルをロックせずに分析処理を行うように指定します。このオプションを指定すると、現在運用中のデータベースに対して Analyze.exe を実行できます。このオプションを -C、-D、または -F の各オプションと組み合わせて使うことはできません。このオプションは、特別に必要とされる状況以外は使用しないようにしてください。 |
<データベースの絶対パス> | 分析対象となる Visual SourceSafe データ フォルダのパス。スイッチの次のパラメータとして指定します。データ パス、ファイルのリスト、または応答ファイルいずれかを必ず指定します。 |
@<応答ファイル> | Analyze.exe を実行すると生成されるファイルであり、問題のあるファイルの一覧が入ります。既定のファイル名は、Analyze.bad です。このファイルを入力として使用すると、Analyze.exe が処理するファイルを限定できるので、処理効率が向上します。この処理を行うには、応答ファイルがパスに存在するか、または Analyze.exe と同じフォルダ (Win32 フォルダ)に存在することが必要です。 |
<ファイルのリスト> | 分析対象となるファイルのリスト。このリストには、ファイル名を含むログファイルを指定したり、C:\VSS\Data\A\AAAAAAAA のようにデータの絶対パスを指定したりすることができます。 |
-?, -H | 使用可能なオプションについての説明を表示します。 |
各オプションは、任意の順序で指定できます。ただし、データベースの絶対パス、応答ファイル、またはファイルのリストは、必ずコマンド ラインのオプションの次に指定します。
例
ANALYZE -C -D -F -V4 C:\VSS\Data
データベース全体を分析して修復し、詳細出力を生成します。
ANALYZE -BC:\Temp C:\VSS\Data
データベースを分析しますが、修復しません。破損ファイルの一覧を C:\Temp に作成します。
ANALYZE -F -C -D @C:\\Temp\\Analyze.bad
前の例で作成された Analyze.bad ファイル内の各ファイルの問題を修復します。
解説
Analyze.exe で修復できる問題を次に示します。
- 親項目と子項目の不一致。プロジェクト内に子項目であるファイルやサブプロジェクトが存在する場合に、親項目と子項目間で位置関係の情報が一致していない、あるいは親子間の参照が失われているが参照カウントは行われている、などの状況が考えられます。
- データベース ファイルの破損。この種のファイルには、Names.dat、Rights.dat、Status.dat、Um.dat、および Version.dat が含まれます。Names.dat には、半角 34 文字を超える長いファイル名が入ります。Rights.dat には、ユーザーとプロジェクトの権限の関係が入ります。Status.dat には、ファイルのチェックアウト状況が入ります。Um.dat には、Visual SourceSafe データベースのすべてのユーザーが入ります。Version.dat には、Visual SourceSafe のバージョンが入ります。
- データベースからの不要項目の削除。
管理者は、Analyze.exe を定期的に実行し、Visual SourceSafe データベースに問題がないことを確認してください。分析および修復のすべての結果は、Analyze.log ファイルにログとして保存されます。Analyze.log は、\VSS\Data\Backup フォルダに格納され、Analyze.exe の実行ごとに置換されます。データベースを分析すると、すべての破損ファイルのリストがファイルとして作成されます。このファイルは Analyze.bad という名前で、同じように \VSS\Data\Backup フォルダに格納されます。さらに、修復されたファイルの元のバージョンも \VSS\Data\Backup フォルダに格納されます。
通常は、すべてのユーザーが Visual SourceSafe からログアウトした後に、管理者が Analyze.exe を実行します。-F オプションを指定して問題を解決する場合は、必ずすべてのユーザーのログアウト後に Analyze.exe を実行してください。-X オプションを指定した場合を除いて、Visual SourceSafe にログオンしているユーザーがいると、Analyze.exe は実行できません。
Analyze.exe の出力は、[分析結果] ウィンドウに書き込まれます。このウィンドウには 2 つのペインが表示されます。Analyze.exe を再度実行する場合は、開いている結果ウィンドウをすべて閉じてください。
ペインには、要約情報が表示されます。複数のペインが表示されている場合は、最前面のペインに要約情報が表示されます。次に例を示します。
Analyze Version 6.0(Build XXXX])
データベースを解析しています。@98/01/23; 17:28
項目 acctapp の親プロジェクトが破損しています。プロジェクトを復元するまで、子ファイルへのリンクは失われたままです。
分析が完了しました。 @98/01/23; 17:30
詳細出力オプションの -V や -V4 を指定しないで Analyze.exe を実行すると、この情報が出力ウィンドウに表示されます。-V オプションを指定すると、情報は [分析結果] ウィンドウの下のペインに書き込まれます。詳細出力の例を次に示します。
ユーザー管理システムの分析を開始しました。
ユーザー管理システムの分析が正常に完了しました。
項目 aaaaaaaa の破損プロジェクトを再構築しています。
プロジェクト リストを再構築しています。
ファイル間の関係を調べています。
親/子の関係を調べています。
セキュリティ システムの妥当性検査を行っています。
'c:\vss\data\a\aaaaaaaa' の新しいコピーを書き込んでいます。
ヘッダーで指定されている項目 'aaaaaaaa' の子項目カウントが、ディスク内の子項目の数と一致しません。子項目カウントは調整されます。
ヘッダーで指定されている項目 'aaaaaaaa' のサブプロジェクト カウントが、ディスク内のサブプロジェクトの数と一致しません。サブプロジェクト カウントは調整されます。
[分析結果] ウィンドウの実際の出力は、折り返されず表示されるので注意してください。
Rights.dat ファイルには、各ユーザーの権限と割り当てが格納されています。このファイルが Analyze.exe によって再構築された場合は、個々のユーザーおよびプロジェクトに割り当てられた権限に関するすべての情報が失われます。その後 Visual SourceSafeを再実行すると、各ユーザーのデータベース全体に対する権限として、そのユーザーがデータベースのユーザー リストに追加されたときに割り当てられた権限 (読み取り/書き込み権限、または読み取り専用権限) が与えられます。権限や割り当てに関連するコマンドを使用して個々のユーザーおよびプロジェクトの権限を再設定するか、[プロジェクトに対する権限] タブの [権限および権限の割り当てコマンドを有効にする] チェック ボックスをオフにして読み取り/書き込み権限または読み取り専用権限を使用できるようにします。