p4 change

チェンジリスト仕様の生成または編集を行います。

p4 changelistコマンドは、p4 changeコマンドのエイリアスです。

構文規則

p4 [g-opts] change [-s] [-f | -u] [[-O] changelist]
p4 [g-opts] change -d [-fsO] changelist
p4 [g-opts] change -o [-sf] [[-O] changelist ]
p4 [g-opts] change -i [-s] [-f | -u]
p4 [g-opts] change -t restricted | public [-U user] [-fuOI] changelist
p4 [g-opts] change -U user [-t restricted | public] [-f] changelist
p4 [g-opts] change -d -f --server=serveridchangelist

説明

p4 addp4 deletep4 edit、またはp4 integrateでファイルを作業状態にすると、それらのファイルは チェンジリストに追加されます。ファイルの編集内容は、チェンジリストがp4 submitでディポへ送られるまで、 ローカルのクライアントワークスペースに保存されます。デフォルトでは、 ファイルはデフォルトチェンジリスト内で作業状態になりますが、 p4 changeコマンドで複数のチェンジリストを生成、編集することができます。

注意

このコマンドは、オープン可能なストリーム仕様でも機能します。

コマンドp4 -Ztag change -oを使用すると、他の情報に加えて、 保留状態のファイルのアクセス時間が表示されます。この情報を使用して、 保留状態のファイルが放棄されているか、また、削除する必要があるかを 判断することができます。

作業中チェンジリストのコメントを編集するとき、またはサブミット済チェンジリストの フィールドを参照するときは、p4 change changelistを使用します。

チェンジリスト番号 - 作業中とサブミット済み

サブミット済みチェンジリスト番号は、チェンジリストを一意に識別するための整数になります。 Helixサーバにより、保留中のチェンジリスト番号が順に割り当てられます。ただし、サブミット済みチェンジリスト番号が時系列で大きくなっていくように、 サブミット時にHelixサーバによってチェンジリスト番号が振り直される場合があります。サブミットされるチェンジリスト番号は順番に大きくなっていきますが、必ずしも連続するわけではありません。例: 103、105、108、109。

p4 changeは、環境変数またはレジストリ変数P4EDITORで定義された エディタで編集または参照できるフォームを表示します。引数が指定されていない場合、 このコマンドは番号付きのチェンジリストを生成します。デフォルトチェンジリスト内で 作業状態になっているすべてのファイルは、番号付きのチェンジリストに移されます。

p4 submitが失敗すると、デフォルトのチェンジリストに 1つの番号が割り当てられます。 これ以降、チェンジリストはそのチェンジリスト番号で参照する必要があります。

フォームフィールド

フィールド名 タイプ 説明

Change:

読み取り専用

既存のチェンジリストの編集時はそのチェンジリストの番号が表示され、 新しいチェンジリストの生成時はnewが表示されます。

Date:

読み取り専用

このチェンジリストが最後に変更された日付。

Client:

読み取り専用

現在のクライアントワークスペースの名前。

User:

読み取り専用

変更の所有者の名前。

空の作業中チェンジリスト(ファイルを含まない作業中チェンジリスト)の所有者は、 このフィールドを編集するか、-U userオプションを使用することにより、 チェンジリストの所有権を別の既存ユーザに委譲できます。

指定する所有者は、 Helixサーバユーザである必要はありません。 ユーザがまだ存在していないため任意の名前を使用する場合や、 ユーザを削除してから仕様を新しいユーザに割り当てるまでの プレースホルダーが必要となる場合があります。

Status:

読み取り専用

pendingshelvedsubmitted、またはnew。ユーザは編集できません。

チェンジリスト作成時がnew、作成済みだが、 まだp4 submitでディポへサブミットしていないときがpending、 その内容がp4 shelveで保留されている場合がshelved、 すでにp4 submitでディポに内容が 保存されている場合がsubmittedです。

Type:

書き込み可能、任意入力

変更のタイプ: restrictedまたはpublic

Type:フィールドを使用して、変更またはそのコメントをユーザから 隠すことができます。状態がshelvedまたはcommitted(Status:フィールドに表示)で タイプがrestrictedであるチェンジリストには、 チェンジリストを所有するユーザ、またはチェンジリスト内の 1つ以上のファイルにlist権限を持っている ユーザにのみアクセスが可能です。

publicタイプの変更にはこれらの制限はなく、すべて表示されます。

デフォルトでは、チェンジリストのタイプはpublicです。 Helixサーバスーパーユーザは、構成可能変数defaultChangeTypeを設定して、 デフォルトのチェンジリストタイプを設定することができます (この設定は、構成可能変数の設定後に作成された チェンジリストに対して有効です)。

Description:

書き込み可能、入力必須

このチェンジリストに関するコメント。この値は、サブミット前に必ず変更しなければなりません。

制限付きチェンジリストの表示権限がない場合は、チェンジリストの 説明の代わりに「no permission」というメッセージが表示されます。

ImportedBy:

読み取り専用

対象となる変更をサーバにインポートするためのコマンド(p4 fetchp4 push、 またはp4 unzip)を実行したユーザの名前を表示します。

このフィールドは、分散バージョニング(DVCS)の場合に使用すると便利です。 分散バージョニングでは、特定のサーバのチェンジリストが別のサーバに コピーされるため、コピー時にそのチェンジリストの基本的なID情報を サーバ間で相互に関連付けることができます。

Perforceは、分散バージョニング構成の場合、 構成可能変数のsubmit.identityp4 submitコマンドで使用して、 チェンジリストのID情報の自動生成機能を有効に することをお勧めします。

Identity:

書き込み可能、入力必須

対象のチェンジリストのフェッチ、プッシュ、解凍の実行時に、すべてのサーバ間で そのチェンジリストを一意に識別するためのラベルを、このフィールドで指定します。

このフィールドは、分散バージョニング(DVCS)の場合に使用すると便利です。 分散バージョニングでは、特定のサーバのチェンジリストが別のサーバに コピーされるため、コピー時にそのチェンジリストの基本的なID情報を サーバ間で相互に関連付けることができます。

Perforceは、分散バージョニング構成の場合、 構成可能変数のsubmit.identityp4 submitコマンドで使用して、 チェンジリストのID情報の自動生成機能を有効に することをお勧めします。

Jobs:

リスト

このチェンジリストで修正完了となるジョブのリスト。

フォームが最初に表示されたときに表示されるジョブのリストは、 p4 userのフォームのJobView:の設定によって制御されます。 表示されるジョブは、削除または追加することができます。

ストリーム: 書き込み可能、任意入力

作業状態のストリームがこのチェンジリストに追加されます。

ストリーム仕様をチェンジリストに追加する場合は、そのストリーム仕様が現在のワークスペースに対して作業状態になっている必要があります。

このリストから作業状態のストリームを削除することができます。

Files:

リスト

このチェンジリストでサブミットされるファイルのリスト。 表示されるファイルは削除することができ、デフォルトのチェンジリストに 含まれているファイルを追加することもできます。

ヒント

フィールドの下に行がある場合は、その行をインデントしてください。以下に例を示します。

Description:
    Created by maria

オプション

-d

指定のチェンジリストを削除します。通常はファイルが含まれていない作業中チェンジリストに対してのみ 使用できますが、スーパーユーザはその他の場合でも -fオプションを付けてチェンジリストを削除することができます。

クライアントが別のサーバにバインドされているチェンジリストを 強制的に削除するには、--serveridオプションと、 クライアントがバインドされているサーバのIDを 指定する必要があります。こうすることにより、自分のサーバ上の チェンジリストを誤って削除することがなくなります。

-f

強制オプションです。サブミット済みチェンジリストのコメント、変更日、 ユーザの編集を可能にします。サブミット済みチェンジリストを編集するには、 adminもしくはsuperの権限が必要です。 スーパーユーザおよび管理者は-fオプションを使用して 読み取り専用フィールドを上書きすることができます。

-uオプションと-fオプションを同時に指定することは できません。

-f -d

サブミット済チェンジリストを強制的に削除します。 Helixサーバ管理者またはスーパーユーザのみがこのコマンドを使うことができます。 コマンド実行の前に、該当チェンジリスト内のすべてのファイルを p4 obliterateでシステムから削除しておく必要があります。

-i

チェンジリスト仕様を標準入力から読み込みます。 入力はp4 changeのフォームで使用されているのと 同じ形式でなければなりません。

-o

チェンジリスト仕様を標準出力へ書き出します。

-O

チェンジリストの番号がサブミット時に変更されていて、元のチェンジリスト番号しか 知らない場合には、-Oおよび元のチェンジリスト番号を使用すれば、 そのチェンジリストの表示または編集が可能です。

-I

チェンジリストの番号が、チェンジリストのIDフィールドになります。

-s

チェンジリストのサブミット時に、デフォルトの状態であるclosedではなく 任意の状態をジョブに割り当てられるようにします。 ジョブを未変更のままにしておくには、特殊な状態であるsameを使用します。

新規のチェンジリストでは、修正完了の状態としてignoreという 特殊な状態が表示されます。(状態が変更されなければ、 ジョブはチェンジリストをサブミットしても修正完了になりません)

このオプションは、p4 fix-sと合わせて使用します。 これは欠陥追跡システムと連携して使用することを目的としたオプションです。

--serverid=serverid

クライアントが別のサーバにバインドされているチェンジリストを強制的に削除するには、 --serveridオプションと、クライアントがバインドされているサーバのIDを 指定する必要があります。 こうすることにより、自分のサーバ上のチェンジリストを誤って削除することが なくなります。

p4 changeコマンドのこのバリアントは、コミットサーバに対して 直接発行する必要があります。

-t type

サブミットされたチェンジリストのタイプrestrictedまたはpublicに変更します。

-u

サブミットされたチェンジリストを更新します。更新可能なフィールドは、 Jobs:Description:Type:のみです。 チェンジリストをサブミットしたユーザだけが、そのチェンジリストを 更新することができます。

-uオプションと-fオプションを同時に指定することは できません。

-U user

-Uuserオプションを指定すると、空の作業中チェンジリストの 所有者が変更されます。チェンジリストを割り当て直すには、 既にそのチェンジリストの所有者であるか、またはadmin権限のあるユーザが -fオプションを使用する必要があります。 (p4 changeフォームのUser:フィールドを手動で編集する場合とは異なり、 このオプションはトリガやスクリプトの中での使用に便利です)

g-opts

グローバルオプション」を参照してください。

使用上の注意点

ファイル引数でリビジョン指定子を使用できるか? ファイル引数でリビジョン範囲を使用できるか? 最低限必要なアクセスレベル

適用外

適用外

openまたはlistの権限は-oオプションの使用に、
adminの権限は-fオプションの使用に必要です。

  • 論理的に異なる作業を処理するためにファイルを編集する場合、 ユーザは複数のチェンジリストを生成する必要があります。 例えば、同じバグを修正するためにファイルfile1.cと ファイルfile2.cを編集し、一方、新しい機能を追加するために ファイルother.cを編集する場合は、 file1.cfile2.cは同一のチェンジリストで作業状態にし、 other.cは別のチェンジリストで作業状態にします。
  • p4 changechangelist コマンドで、既存のチェンジリストの仕様を編集できますが、 そのチェンジリストにリンクされているファイルやジョブは表示されません。 特定のチェンジリストにリンクしたファイルのリストを表示するには、p4 opened-c changelistを使用し、 特定のチェンジリストにリンクしたジョブのリストを表示するには、p4 fixes-c changelistを使用します。
  • ファイルをあるチェンジリストから別のチェンジリストに移動するときには、p4 reopenを使用するか、 あるいはp4 revertを使用してすべての作業中チェンジリストから1つのファイルを削除します。

p4 change

新しいチェンジリストを生成します。

p4 change -f 25

サブミットされたチェンジリスト25を編集します。 管理者またはスーパーユーザのアクセス権限が必要です。

p4 change -d 29

チェンジリスト29を削除します。チェンジリスト29がpending状態で、 ファイルが含まれていない場合にのみ削除されます。

p4 change -f -d 121 指定したチェンジリストが強制的に削除されます。

関連コマンド

ディポへチェンジリストをサブミットする

p4 submit

あるチェンジリストから別のチェンジリストへ1つのファイルを移動する

p4 reopen

すべての作業中チェンジリストからファイルを除去する

p4 revert

特定の基準に合致するチェンジリストのリストを出力する

p4 changes

作業中ファイルを一覧表示する

p4 opened

特定のチェンジリストにリンクされた修正のリストを出力する

p4 fixes

特定のチェンジリストにジョブをリンクする

p4 fix

特定のチェンジリストから1つのジョブを削除する

p4 fix -d

チェンジリストに含まれるすべてのファイルのリストを出力する。

p4 opened-c changelist

あるチェンジリスト内で変更されたファイルに関する詳細を取得する

p4 describechangelist