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] [-fuO] changelist
p4 [g-opts] change -U user [-t restricted | public] [-f] changelist

解説

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

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

チェンジリストには連番が割り当てられます。Perforceは、サブミット済チェンジリストの番号の並び順を日付時刻の並び順と同じにする目的で、サブミット時にチェンジリストの番号を振り直すことがあります。

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

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

p4 changelistp4 changeと同等に機能します。

フォームフィールド

フィールド名

タイプ

解説

Change:

読み取り専用

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

Client:

読み取り専用

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

Date:

読み取り専用

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

User:

読み取り専用

変更の所有者の名前。

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

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

Status:

読み取り専用

pendingshelvedsubmittednewのいずれかが表示されます。ユーザによる編集はできません。

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

Description:

書き込み可能、入力必須

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

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

Jobs:

リスト

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

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

Type:

書き込み可能、任意指定

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

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

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

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

Files:

リスト

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

オプション

-d

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

-f

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

-uオプションと-fオプションを同時に使うことはできません。

-f -d

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

-i

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

-o

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

-O

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

-s

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

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

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

-t type

サブミット済チェンジリストのtyperestrictedまたはpublicに変更します。

-u

サブミット済チェンジリストを更新します。[Jobs:]、[Description:]、[Type:]のフィールドのみが更新可能であり、チェンジリストのサブミット実行者のみがこのチェンジリストを更新できます。

-uオプションと-fオプションを同時に使うことはできません。

-U user

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

g-opts

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

使用上の留意点

ファイル引数にリビジョン指定子を使えるか?

ファイル引数にリビジョン範囲を使えるか?

最低限必要なアクセスレベル

適用外

適用外


open、または-oオプション使用時はlist、または-fオプション使用時はadmin

  • 論理的に異なる作業を処理するためにファイルを編集する場合、ユーザは複数のチェンジリストを生成する必要があります。例えば、同じバグを修正するためにファイルfile1.cとファイルfile2.cを編集し、一方、新しい機能を追加するためにファイルother.cを編集する場合は、file1.cfile2.cは同一のチェンジリストで作業状態にし、other.cは別のチェンジリストで作業状態にします。

  • p4 change changelistは、既存チェンジリストの仕様を編集するときに使用しますが、これを使用しても、そのチェンジリストにリンクしたファイルやジョブは表示されません。特定のチェンジリストにリンクしたファイルのリストを見るには、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 submit

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

p4 reopen

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

p4 revert

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

p4 changes

作業状態のファイルのリストを出力する。

p4 opened

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

p4 fixes

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

p4 fix

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

p4 fix -d

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

p4 opened -c changelist

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

p4 describe changelist