p4 integrate
ブランチまたはマージするファイルを作業状態にします。
p4 integrateはp4
integ
と略記することができます。
構文
p4 [g-opts] integrate [options] fromFileSpec[revRange] toFile
p4 [g-opts] integrate [options] -b branch [-r] [toFileSpec[RevRange] ...]
p4 [g-opts] integrate [options] -b branch -s fromFileSpec[revRange] [toFile ...]
p4 [g-opts] integrate [options] -S stream [-r] [-P parent] [file[revRange] ...]
次のように[options]を使用できます。
-c changelist -Di -f -h -O[b][r] -n -m max -R[b][d][s] -q -v
説明
1つのファイルに対して行った変更を他のファイルにも伝達する必要がある場合には、p4 integrate
でそのプロセスを開始します。 コマンドには、反映元ファイルおよび反映先ファイルの指定がファイル、ブランチ、またはストリームのいずれを使用しているかによって、4つの構文バリアントが含まれます。
このコマンドの最も単純な構文バリアントはp4 integrate fromFiletoFile
という形式で、これはバージョニングサービスにfromFile
の変更をtoFile
に伝達する必要があることを知らせます。また、次のように動作します。
toFile
がまだ存在していなければ、fromFile
をtoFile
にコピーした上で、クライアントワークスペースでtoFile
をbranch
のための作業状態にします。-
toFile
が存在し、上記のようにfromfile
と共通の祖先を持つ場合、toFile
をintegrate
のための作業状態にします。 この場合、p4 resolve
でfromFile
の変更のすべて、または一部をtoFile
に伝達するか、あるいは伝達しないかの選択をします。p4 resolve
コマンドは、theirs
としてfromFile
を、yours
としてtoFile
を、baseとして共通の最も編集されたファイルをそれぞれ使用します。 fromFile
が最新リビジョンで削除されている場合、(そしてfromFile
とtoFile
間の前回までの変更がすべて反映されている場合)、toFile
をクライアントワークスペースでdelete
のため作業状態にします。p4 move
を使用してファイルを移動する場合、またはOSに備え付けのコマンドを使用してワークスペース内でファイルの名前を変更する場合(p4 reconcile
またはp4 status
を使用して、自分が行った移動を反映するためにチェンジリストを更新する場合)のいずれかでは、p4 integrate
はこれらの操作を自動で検知して、反映元と反映先の間のマッピングを適切に調節し、マッピングし直すファイルペアごとにファイル名の衝突解決をスケジュールします。
(利用可能なオプションの中には、この動作を変更するものもあります。 詳細については、「オプション」を参照してください。)
このプロセスは、ディポに対してp4
submit
toFile
を実行した時点で完了します。
従来のブランチまたはその他のストリームディポからタスクストリームに反映する場合、ファイルを最初に編集してサブミットしない限り、そのファイルは親ストリームまではコピーされません。
複数のファイルを指定するには、fromFile
の場合もtoFile
の場合もワイルドカードを使用します。 fromFile
で使用するワイルドカードとtoFile
で使用するワイルドカードは同じでなければなりません。 HelixサーバはfromFile
のパターンとtoFile
のパターンを比較し、fromFile
/toFile
のペアのリストを生成し、各ペアに反映操作を実行します。
シンタックスp4 integrate fromFilestoFiles
では、fromFiles
の変更をtoFiles
に伝達する必要が生じるたびに、fromFiles
とtoFiles
の間のマッピングを指定する必要があります。 これに代わる方法は、p4 branch
でfromFiles
とtoFiles
の間のマッピングをbranch view
に保存し、fromFiles
とtoFiles
の間で変更を伝達する必要が生じるたびにp4 integrate -b branchview
を使用する、というものです。
デフォルトでは、p4 integrate
でbranch
またはintegrate
のための作業状態にされたファイルは、クライアントワークスペースでは読み取り専用になります。 これらのファイルは、サブミット前に、p4
edit
であらためてedit
のための作業状態にすることができます。
toFile
にfromFile
から反映されるたびに、Helixサーバはその反映の結果を記述する反映記録をデータベースに生成します。 この反映記録には、fromFile
およびtoFile
の名前、toFile
に反映されたfromFile
のリビジョン、toFile
の新しいリビジョン番号、反映時に行われたアクション(操作)が含まれます。 反映操作の詳細については、「p4
integrated
」を参照してください。
ほとんどの場合、p4 integrate
は遅延コピーを行います。 ファイルの内容はサーバに複製されません。反映記録にはファイルを再現するための十分な情報が含まれているからです。
反映操作は一時オブジェクトファイルに対して行われ(+S
および+S
)、遅延コピーは作成されません。 反映されたn
tempobj
ファイルはサーバ上で追加のディスクスペースを消費します。
p4 integrate
を使用しない場合は、次の選択肢があります。
- p4 populate は、ワークスペースでファイルを開かずに速やかにファイルをブランチします。
- p4 copy は、衝突解決をスケジュールしないで、コピーするファイルを開きます。 状況に応じて、
p4 copy
に-v
オプションを指定するかどうかを検討してください。 - p4 merge は、マージするファイルを開き、すべての変更に対して衝突解決をスケジュールします。
オプション
反映用基本オプション
|
|
|
fromFiles は反映元ファイル、
|
|
実際の反映操作は行わずに、このコマンドが実行することになる反映操作を表示します。 |
-v |
このオプションは非推奨になりました。代わりに、p4 populateコマンドを使用してください。 反映先ファイルの衝突を解決する必要がない場合、 クライアントワークスペースファイルが変更されない「バーチャル」統合が実行されます。 「バーチャル」統合をサブミットすると、p4 syncを使用して ワークスペースを更新できるようになります。 |
|
指定した作業中チェンジリスト内の このオプションが付いていなければ、ファイルはデフォルトのチェンジリスト内で作業状態にされます。 |
|
クワイエットモードは、反映、コピー、マージの対象となるファイルのリストに関する、通常の出力メッセージを抑止します。 エラーまたは例外的状態に関するメッセージは表示されます。 |
|
詳細については、「グローバルオプション」を参照してください。 |
高度な反映オプション
|
最も単純な形式 より複雑な形式で
|
|
ブランチビューのマッピングを逆にし、反映先ファイルから反映元ファイルへの反映を行います。 |
|
|
|
|
|
反映操作の前に、反映先ファイルを最新リビジョンに同期する処理を、自動的には行いません。 代わりに現在のワークスペースにあるリビジョンを使用します。 |
|
コマンドで反映を実行するファイルを初めの |
|
|
|
|
|
|
|
|
|
|
|
ストリームをその親に反映します。 マッピングの方向を反転するには、 設定された親を無視して別のストリームに反映するには、 反映されたストリームファイルをサブミットするには、現在のクライアントを対象ストリームに切り替えるか、対象ストリームの子バーチャルストリームに切り替える必要があります。 |
使用上の留意点
ファイル引数にリビジョン指定子を使えるか? | ファイル引数にリビジョン範囲を使えるか? | 最低限必要なアクセスレベル |
---|---|---|
使用可 |
使用可 |
|
例
|
|
|
ブランチビュー |
|
次にマッピングするブランチビュー |
|
ブランチビュー |
関連コマンド
ブランチマッピングを生成または編集する |
|
既存のブランチマッピングのリストを参照する |
|
既に実行されサブミットされた反映のリストを参照する |
|
ファイルを次のコマンドで作業状態にしてから、あるファイルから別のファイルへの変更を伝播する: |
|
特定のファイルに対して実行されたあらゆる反映の履歴を参照する |