詳細情報: ファイルまたはディレクトリのチェックアウトで行われる処理

スナップショット ビューにはファイルとディレクトリのコピーがあり、動的ビューからは VOB 内のデータにアクセスできます。ですから、ビュー タイプが異なれば、チェックアウトの手順も異なります。

スナップショット ビューからのチェックアウト

スナップショット ビューからファイルまたはディレクトリをチェックアウトすると、その依頼は次のように処理されます。

  1. 次の情報が収集されます。
    • 現在ビューにロードされているバージョン
    • 構成仕様によって選択されたバージョン
    • VOB 内の最新バージョン
  2. 次のいずれかの状態になります。
    • UNIX® システムでは、ビュー内のファイルのバージョンが VOB 内で最新ではない場合には、通知を受けます。ファイルのチェックアウト時に -query オプションを使用すると、チェックアウトするバージョンを指定するよう指示されます。ディレクトリのチェックアウト時に -query オプションを使用すると、通知を受けますが、ビューに現在ロードされているディレクトリのバージョンをチェックアウトする必要があります。
    • Windows® システムでは、ディレクトリ エレメントの場合には、ビューに現在ロードされているディレクトリのバージョンをチェックアウトする必要があります。

    次のいずれかの条件が存在する場合、ビューのバージョンは VOB の最新バージョンではありません。

    • ビューを最後に更新した後に、ほかのユーザーが新しいバージョンをチェックインした場合。
    • ビューの構成仕様が、ラベルまたは時間規則に基づいてバージョンを選択し、VOB の最新バージョンが、これらのパラメータの範囲外になった場合 (図を参照)。

      prog.c main ブランチのバージョン ツリーにはバージョンが 0 から 3 まであり、3 が VOB 内の最新バージョンです。ラベル BL3 がバージョン 2 に付けられており、ビューが選択しているバージョンはこのバージョンです。

      ラベル BL3 が選択しているバージョンは、エレメントの最新バージョンではありません。

  3. ビューに現在ロードされている以外のバージョンをチェックアウトした場合、チェックアウト バージョンがビューにロードされます。
  4. チェックアウトしたエレメントのバージョンが VOB に通知されます。

    UNIX システムでは、ファイルは書き込み可能となります。ディレクトリについては、mkelem コマンドを使用して、新規エレメントをソース管理に追加することが可能です。

    Windows システムでは、ファイルからは読み取り専用属性が削除されます。 ディレクトリの場合、新規エレメントをソース管理に追加することができます。

スナップショット ビュー内で VOB リンクをチェックアウトすると、特殊なアクションが実行されます。

動的ビューからのチェックアウト

動的ビューからファイルをチェックアウトすると、その依頼は次のように処理されます。

  1. ビューのバージョン選択規則で VOB 内の最新バージョンが選択されずに、-query オプションと共に checkout コマンドを使用する場合は、チェックアウトするバージョンを選択するよう指示されます。

    たとえば、構成仕様を利用してラベルや時間規則に基づいてバージョンを選択する場合、ビューに VOB 内の最新バージョンが選択されないことがあります (図を参照)。

    prog.c main ブランチのバージョン ツリーにはバージョンが 0 から 3 まであり、3 が VOB 内の最新バージョンです。ラベル BL3 がバージョン 2 に付けられており、ビューが選択しているバージョンはこのバージョンです。

    -query オプションを使用しない場合、まったく通知なしに最新バージョンがチェックアウトされます。VOB 内の最新バージョンでなくても、ビューが選択するバージョンをチェックアウトするには、checkout コマンドの -ver オプションを使用します。

    ブランチ上の最新バージョンではないバージョンをチェックインできます。

  2. チェックアウトしたエレメントのバージョンが VOB に通知されます。
  3. ファイルの場合、編集可能なビュープライベート ファイルがビューで作成されます。このファイルは、チェックアウト バージョンのコピーです。 ディレクトリについては、mkelem コマンドを使用して、新規エレメントをソース管理に追加することが可能です。
関連概念
最新バージョンと変更のマージについて

フィードバック