ファイルタイプ

Perforceでは、基本ファイルタイプのセットがサポートされています。 これらの基本タイプには、RCSキーワード拡張やファイル圧縮などをサポートするため、 ファイルタイプ修飾子が適用されます。

ファイルを追加する際、Helixサーバは次のように動作します。

  • タイプマップテーブルを調べて、追加しようとしているファイルのファイルタイプを システム管理者が定義しているかどうかを確認します。合致するものが見つかれば、 そのファイルタイプがタイプマップテーブルの定義に従って設定されます。(「p4 typemap」も参照)
  • 一致するものが見つからない場合、 Perforceは構成可能変数filesys.binaryscanに従って 該当ファイルの先頭のバイト(デフォルトでは 65536バイト)を調べ、それが textbinaryかを判断した上、 ファイルをディポに保存します。

デフォルトでは、テキストファイルのリビジョンはリバースデルタ形式で保存されます。 構成可能変数filetype.maxtextsizeによる制限値(デフォルトでは10MB)を超える、 新規に追加されたテキストファイルにはtext+Cファイルタイプが割り当てられて 完全な形で保存されます。 .zip形式(.jarファイルを含む)で圧縮されたファイルも自動的に検出され、 ubinaryタイプが割り当てられます。 その他のバイナリファイルのリビジョンは、圧縮されてファイル全体が保存されます。

(Unicode環境ではファイルの検出方式が異なります。詳細については、 『Perforce国際語モードに関する注意事項』を参照してください)

Helixサーバ管理者は次の操作を実行できます。

  • タイプマップ機能(p4 typemap)を使用して、Perforceのデフォルトの ファイルタイプ検出機構をオーバーライドすることができます。 この機能は、binaryファイル形式(例えば、Adobe PDFや リッチテキスト形式)に対して有効です。バイナリファイルは大量の ASCIIテキストから始まっている場合があるため、この機能がなければ textファイルと間違えられてしまう可能性があるからです。
  • filesys.binaryscan変数とfiletype.maxtextsize変数を使用して(「p4 configureを参照」)、 テキスト/バイナリの検出に対するデフォルトの制限である65536バイトと、 RCSテキストファイルのサイズ制限である10MBをそれぞれ 変更することができます。