使用上の留意点
- 既に存在するファイルのタイプは、
p4 opened
またはp4 files
で判断できます。 - デルタ記憶(
text
ファイルのデフォルト方式)は、ファイルのリビジョン間の差分(つまり、デルタ)のみを保存する方法です。 フルファイル記憶(binary
ファイルでのデフォルト方式)は、ファイル全体を保存します。 ファイルタイプにより、フルファイル記憶とデルタ記憶のどちらを使用するかが決まります。 Perforceは、デルタ記憶にRCS形式を使用します。 - ファイルタイプによっては、ディポ内に保存するために
gzip
形式に圧縮されます。 圧縮はサブミットのプロセス中に行われ、解凍は同期中に行われます。 サブミットされた時点のファイルが常にクライアントワークスペースに存在するため、このプロセスをユーザが意識することはありません。 - 非UNIXクライアントワークスペース上のシンボリックリンクは、リンク先のファイルへの相対パスを含む小さなテキストファイルとして表示されます。 非UNIXクライアントでこれらのファイルを編集するときは注意してください。これらのファイルをディポにサブミットすると、シンボリックリンクがUNIXクライアントワークスペース上に存在しないファイルを指示することになる場合があるからです。
-
ファイルタイプを変更しても、ディポに保存された以前のリビジョンには影響しません。
例えば、
+S
(一時オブジェクト)修飾子を追加してファイルタイプを変更すると、ファイルの最新n
n
個のリビジョンのみディポに保存するようにPerforceに伝えます。 既存のファイルを一時オブジェクトに変更した場合は、それ以降(n
番目より後)のリビジョンによって、古くなった最新リビジョンの後に保存されたリビジョンが消去されますが、+S
修飾子を追加する前にディポに保存されたファイルのリビジョンは影響を受けません。 (n
+S
修飾子を追加した後の最新でないリビジョンを同期しようとすると、そのファイルはクライアントワークスペースから削除されます。 このようなリビジョンは、n
p4 filelog
の出力においてpurge
操作として表示されます。) +S
修飾子と+S
修飾子を指定して、一時オブジェクトファイルに対してn
p4 integrate
コマンドを実行しても、遅延コピーは作成されません。 反映後のtempobj
ファイルにより、共有バージョニングサービスで追加のディスクスペースが使用されます。-
修正時刻(
+m
)修飾子は特殊な事例であり、ファイルのオリジナルのタイムスタンプを保持する必要のある開発者向けに作成されたものです。クライアントワークスペースで
modtime
オプションが使用されると、ファイル日付がリビジョンごとに進むことは保証されません。 例えば、ファイルがコピーされて反映されると(「theirsを承諾」)、ファイルには反映元ファイルのタイムスタンプが採用されます。 ユーザが古い日付のファイルをチェックインすると、クライアントワークスペースのファイルにはそれと同じ古い日付が使用されます。 通常、Perforceではファイルの同期時にタイプスタンプが更新されます。 modtimeオプションを指定すると、p4 sync
コマンドの実行後のクライアントワークスペース内のファイルのタイムスタンプが、サブミット時にそのファイルに設定されていた元のタイムスタンプ(つまり、サブミット時におけるPerforceバージョニングサービスのタイムスタンプでも、同期時におけるユーザのワークステーションのタイムスタンプでもないタイムスタンプ)に戻ります。この修飾子が有効になる典型的な事例は、Windows環境によくあるサードパーティ製DLLを含む開発です。 このようなファイルに付与されたタイムスタンプは通常、開発環境内やOSによって、バージョン情報の代わりとして使用されるため、Perforceユーザのクライアント設定に関係なく、ファイルのオリジナルのタイムスタンプを保持する必要がある場合があります。
ファイルの
+m
修飾子を設定した場合、ファイルを同期すると、サブミット時にファイルに付与されたオリジナルのタイムスタンプがPerforceによって復元されます。 これはPerforceによって以下が無視されることを意味します。modtime
(「サブミット時のファイルのタイムスタンプ」)- クライアントワークスペースの
nomodtime
(「同期時のクライアント上の日付と時刻」)オプション設定
-
2000年よりも前のバージョンのPerforceでは、キーワードセットを使用してファイルタイプが指定されました。 以下の表は、旧キーワードとそれに対応する現在の基本ファイルタイプおよび修飾子とをリストにしたものです。
旧キーワード 説明 基本ファイルタイプ 修飾子 text
テキストファイル
text
なし
xtext
実行可能なテキストファイル
text
+x
ktext
RCSキーワード拡張を行ったテキストファイル
text
+k
kxtext
RCSキーワード拡張を行った実行可能なテキストファイル
text
+kx
binary
非テキストファイル
binary
なし
xbinary
実行可能なバイナリファイル
binary
+x
ctext
圧縮されたテキストファイル
text
+C
cxtext
圧縮された実行可能なテキストファイル
text
+Cx
symlink
シンボリックリンク
symlink
なし
ltext
長いテキストファイル
text
+F
xltext
実行可能な長いテキストファイル
text
+Fx
ubinary
圧縮されていないバイナリファイル
binary
+F
uxbinary
圧縮されていない実行可能なバイナリファイル
binary
+Fx
tempobj
一時オブジェクト
binary
+FSw
ctempobj
圧縮された一時オブジェクト
binary
+Sw
xtempobj
実行可能な一時オブジェクト
binary
+FSwx
xunicode
実行可能なUnicodeファイル
unicode
+x
xutf16
実行可能なUTF-16ファイル
utf16
+x