p4 edit

概要

クライアントワークスペース内で、編集を目的としてファイルを作業状態にします。

構文

p4 [g-opts] edit [-c changelist] [-k -n] [-t type] file...

解説

p4 editは、クライアントワークスペース内で、編集を目的としてファイルを作業状態にします。指定されたファイルはチェンジリストにリンクされます。ディポのファイルは、そのチェンジリストがp4 submitにコミットされるまでは変更されません。

Perforceは、ローカルOSのファイルパーミッションを制御します。p4 editが実行されると、指定されたファイルについてOSのwriteパーミッションが付加されます。

p4 editによって編集用に作業状態にされたファイルがディポにサブミットされても、ディポに存在するそのファイルのリビジョンは置き換えられません。その代わり、それまでのリビジョンをアクセス可能な状態で残しつつ、新しいリビジョンが生成され、連番で次のリビジョン番号が割り当てられます。デフォルトでは、ファイルを参照するコマンドはすべてこの最も新しいリビジョン(最新リビジョン)を対象とします。

デフォルトでは、指定されたファイルはデフォルトのチェンジリストに追加されます。別のチェンジリストを指定するには、-cオプションを使用します。(あるいは、デフォルトのチェンジリストから番号付チェンジリストにファイルを移動するには、p4 changeコマンドを使用します。)

すでに編集目的で作業状態にされているファイルをあるチェンジリストから別のチェンジリストに移動するには、p4 reopenを使用してください。

オプション

-c changelist

指定されたチェンジリストに対してファイルを編集目的で作業状態にします。このオプションが付いていないと、デフォルトのチェンジリストに対してファイルが作業状態になります。

-k

既存のワークスペースファイルを保存します。当該ファイルがクライアントビューの中にない場合でも、編集目的の作業状態であるものとしてマークします。共有バージョン化サービスに接続しない状態で行った作業を照合する場合にのみ、p4 edit -kを使用します。

-n

ファイルやメタデータを実際に変更せずに、編集目的で作業状態にするファイルをプレビューします。

-t type

新しいファイルリビジョンを、同じファイルのそれまでのリビジョンのタイプをオーバーライドして、指定のタイプで保存します。ファイル編集時に、ファイルタイプを強制的に再検出する(つまり、ファイルが新規追加されているときと同様にファイルタイプを割り当てる)には、p4 edit -t autoを使用します。

ファイルタイプについては「“ファイルタイプ”」を参照してください。

g-opts

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

使用上の留意点

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

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

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

使用不可

使用不可

open

指定のファイルに関するローカルOSのwriteパーミッションはp4 editによって付加されるため、実際にファイルを編集するのはこのコマンドが発行されてからになります。ファイル編集のプロセスは次のようになります。

  1. p4 editを用いて、クライアントワークスペース内でファイルを作業状態にします。

  2. エディタでファイルを編集します。

  3. p4 submitでディポへファイルをサブミットします。

ファイルの古いリビジョンを編集するには、p4 syncを用いて過去に保存されていたファイルリビジョンをクライアントワークスペースに呼び出し、p4 editでそのファイルを編集します。このファイルリビジョンは最新リビジョンではないので、p4 resolveを実行してからでなければ、p4 submitでディポに保存することはできません。

Perforceは、すでに作業状態になっているファイルを作業状態にする操作を妨げません。デフォルトの構成では、複数のユーザが同じファイルを同時に編集し、p4 resolveによってファイル衝突を解決することが認められています。他のユーザがすでに特定のファイルを作業状態にしているかどうかを調べるには、p4 opened -a fileを使用します。

自分が既に作業状態にしているファイルを他のユーザが操作するのを防ぐ必要がある場合は、p4 lockコマンドを使用する(自分が作業状態にしているファイルを他のユーザが編集できるようにするが、まず自分が変更をサブミットするまでは、他のユーザがファイルをサブミットできないようにする)か、+l(排他オープン)ファイルタイプを使用して他のユーザが編集目的でファイルを作業状態にすること自体を防ぐことができます。

Perforceの以前のバージョンでは、p4 editp4 openと呼ばれていました。

p4 edit -t text+k doc/*.txt

カレントディレクトリのdocサブディレクトリで、ファイル名の最後が.txtになっているすべてのファイルを、edit用に作業状態にします。これらのファイルはデフォルトのチェンジリストにリンクされ、キーワード拡張が有効のtextタイプとして保存されます。

p4 edit -t +l //depotname/...

ディポ内のすべてのファイルに対し、悲観的ロック(排他オープン)を実施します。このチェンジリストのサブミット後は、depotnameというディポにあるファイルを編集できるのは一度に1ユーザのみとなります。

p4 edit -c 14 ...

現在の作業ディレクトリのファイルツリーで、すべてのファイルをedit用に作業状態にします。これらのファイルはtextbinaryかを調べられ、ファイルの変更はチェンジリスト14にリンクされます。

p4 edit status%40jan1.txt

status@jan1.txtという名前のファイルを編集のための作業状態にします。

Perforceワイルドカードとして使用するために予約されているその他の文字の指定方法の詳細については、320ページの「ファイル名およびエンティティに関する文字の制限」を参照してください。

関連コマンド

追加を目的としてファイルを作業状態にする。

p4 add

削除を目的としてファイルを作業状態にする。

p4 delete

作業状態のファイルをすべてディポにコピーする。

p4 submit

ディポのファイルをクライアントワークスペースにコピーする。

p4 sync

新しいチェンジリストを生成または編集する。

p4 change

作業状態にある全ファイルのリストを表示する。

p4 opened

ファイルを非作業状態に戻す。

p4 revert

作業状態のファイルを別のチェンジリストへ移動、またはファイルタイプの変更を行う。

p4 reopen