Helix Core P4コマンドリファレンス (2019.1)

p4 add

ディポに追加するファイルをクライアントワークスペースで作業状態にします。

構文

p4 [g-opts] add [-c changelist] [-d -f -I -n] [-t filetype] file ...

説明

p4 addは、ディポに追加するファイルをクライアントワークスペースで作業状態にします。 これらの指定されたファイルはチェンジリストにリンクされます。 ファイルは、チェンジリストがp4 submitでコミットされるまでは、実際にはディポに追加されません。 追加するファイルは、ディポに存在しないファイルか、ディポに存在していても最新リビジョンで削除済みとしてマークされているファイルでなければなりません。

コマンドp4 add *またはp4 add ...p4 reconcile -a *と同義です。

つまり、ワークスペースのファイルのうちディポに存在しないすべてのファイルが、追加目的で作業状態になります。 -aオプションを使用しても、p4 add -dの動作に影響はありません。

p4 addでファイルを作業状態にするには、そのファイルがクライアントビューに存在する必要がありますが、p4 addの実行時点でワークスペースに存在する必要はありません。 p4 submitを実行するとき、ファイルはワークスペースにある必要があります。 そうでなければ、サブミットは失敗します。 p4 addは、ファイルを作成しないか、あるいはワークスペースでファイルを上書きします。 ファイルが存在しない場合は、ユーザが作成しなければなりません。

デフォルトでは、指定されたファイルはデフォルトチェンジリストで作業状態にされます。 指定されたチェンジリストでファイルを作業状態にするには、-cオプションを使用します。

デフォルトチェンジリストから番号付きチェンジリストにファイルを移動するには、p4 changeコマンドを使用します。

デフォルトでは、p4 addは適用されるP4IGNOREファイルに記述されたファイルを無視します。 この動作をオーバーライドするには、-Iオプションを使用してP4IGNOREファイルの内容が無視されるようにします。

ファイルを追加するときには、コマンドはまずタイプマップテーブル(p4 typemap)を調べ、追加しようとしているファイルのファイルタイプをシステム管理者が定義しているかどうかを確かめます。 合致するものが見つかれば、そのファイルタイプがタイプマップテーブルの定義に従って設定されます。 一致するものが見つからない場合、コマンドは構成可能変数filesys.binaryscanに従って該当ファイルの先頭のバイト(デフォルトでは65536バイト)を調べ、それがtextbinaryかを判断した上、ファイルをディポに保存します。 デフォルトでは、テキストファイルのリビジョンはリバースデルタ形式で保存されます。 構成可能変数filetype.maxtextsizeによる制限値(デフォルトでは10MB)を超える、新規に追加されたテキストファイルにはtext+Cファイルタイプが割り当てられて完全な形で保存されます。 .zip形式(.jarファイルを含む)で圧縮されたファイルも自動的に検出され、ubinaryタイプが割り当てられます。 その他のバイナリファイルのリビジョンは、圧縮されてファイル全体が保存されます。

-t filetypeオプションは、ファイルタイプを明示的に指定して、タイプマップテーブルとデフォルトファイルタイプ検出機構の両方をオーバーライドします。

@#*%の文字が含まれたファイルを追加するには、-fオプションを使用します。 このオプションを指定すると、Helixサーバでワイルドカードとして使用される文字が強制的に文字解釈されます。

編集または移動/追加目的でファイルを作業状態にした後で、他のユーザがその作業状態のファイルを削除すると、チェンジリストをサブミットしたときに処理がエラーで失敗します。 反映先ファイルを確実に作成するには、-dオプション(「ダウングレード」)を指定します。 詳細に述べると、次のとおりです。

  • あなたが編集目的でファイルを作業状態にした後、別のユーザがそのファイルを削除または移動するチェンジリストをサブミットします。 あなたが編集をサブミットすると、Helixサーバはエラーを返し、ファイルは編集目的の作業状態のままになります。 チェックアウトしたディポ内の場所から(あなたが行ったすべての変更も含めて)ファイルをリストアするには、-dオプションを追加してファイルを追加目的で作業状態にしてから、そのファイルをサブミットします。
  • あなたが移動/追加目的でファイルを作業状態にした後、別のユーザが元のファイルを削除するチェンジリストをサブミットします。 移動をサブミットすると、Helixサーバはエラーを返し、ファイルは移動/追加目的の作業状態のままになります。 反映先ファイルを作成するには、追加ファイルを指定してp4 add -dコマンドを実行し、そのファイルをサブミットします。

オプション

-c changelist

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

-d

ファイルを作業状態にするステータスを、単純な追加にダウングレードします。

-f

-fオプションを使用すると、ワイルドカードがファイル名に強制的に含められます。 詳細については、「ファイル指定」を参照してください。

-I

無視するかどうかのチェックを行いません。P4IGNOREによって指定されたすべての設定を無視します。

-n

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

-t filetype

タイプマップテーブルのあらゆる設定をオーバーライドして、作業状態にあるファイルを指定したファイルタイプに変更します。

Helixサーバファイルタイプについては「ファイルタイプ」を参照してください。

g-opts

詳細については、「グローバルオプション」を参照してください。

使用上の留意点

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

使用不可

使用不可

open

  • p4 addのファイル仕様に含めたワイルドカードは、ローカルのオペレーティングシステムにより展開されます。 例えば、... ワイルドカードとp4 addは併用できません。
  • 空のディポにファイルを追加する操作と、既に他のファイルが含まれるディポにファイルを追加する操作に違いはありません。 新しい空のディポにファイルを追加する場合も、p4 addを使用して、クライアントワークスペースのファイルを追加します。
  • p4 add -fでは特殊文字のASCII拡張は使用しないでください。 ファイルstatus@june.txtを追加する場合は、次のように指定します。

    p4 add -f status@june.txt

    手動で@記号を拡張して、ファイルstatus%40june.txtを追加しようとすると、Helixサーバ%記号を文字として解釈し16進コード%25に拡張され、ファイル名はstatus%2540june.txtとなります。

p4 add -t binary file.pdf

新しいファイルに特定のファイルタイプを割り当て、タイプマップテーブルの設定をオーバーライドします。

p4 add -c 13 *

ユーザの現在のディレクトリにあるすべてのファイルをディポにaddするために作業状態にします。これらのファイルはチェンジリスト13にリンクされます。

p4 add README ~/src/*.c

  • ユーザの現在の作業でディレクトリにあるREADMEファイルをadd目的で作業状態にします。
  • ユーザの~/srcディレクトリにあるすべての*.cファイルをadd目的で作業状態にします。
  • これらのファイルはデフォルトのチェンジリストにリンクされます。

p4 add -f *.c

*.cという名前のファイルをaddするための作業状態にします。

このファイルをビューまたは他のコマンドで参照するために、その後はアスタリスクの代わりに16進拡張%2Aを使用する必要があります。

詳細については、「ファイル名およびエンティティに関する文字の制限」を参照してください。

関連コマンド

編集するファイルを作業状態にする

p4 edit

削除するファイルを作業状態にする

p4 delete

ファイルを移動(リネーム)する

p4 move

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

p4 submit

ディポからクライアントワークスペースへファイルを読み込む

p4 sync

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

p4 change

テキスト/バイナリのファイル検出のデフォルトの動作を変更する

p4 configure

すべての作業状態のファイルを一覧表示する

p4 opened

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

p4 revert

作業状態のファイルを別の作業中チェンジリストに移動する

p4 reopen

作業状態のファイルのファイルタイプを変更する

p4 reopen -t filetype