かぁくん本紀自作CMS・自作サーバーにて運用中
PC・サーバ >

Fossilリポジトリの除外ファイル設定

公開日時: 2022-09-20 15:32:06更新日時: 2023-06-21 12:48:25Fossilざっくり解説の7ページ目、Fossilのバージョン管理から特定のフォルダや特定の拡張子を除外する方法、及び、コミット時に「contains binary data. Use --no-warnings or the "binary-glob" setting to disable this warning.」というエラー文が表示された場合の対象法について説明します。

Fossilのバージョン管理から除外するファイルの設定

Fossilでは、指定したファイルをバージョン管理から除外できる機能が搭載されています。
テスト用のダミーデータなどをリポジトリのフォルダ内に置いている場合は、そのファイルを除外指定しておきましょう。
  1. リポジトリのフォルダ内に「.fossil-settings」という名前でフォルダを作成します。(「.」で始まるフォルダ名のため、LinuxのGUI環境では隠しフォルダとして扱われます。)

  2. 作成した.fossil-settings内に「ignore-glob」(拡張子なし)というテキストファイルを作成します。このファイルに、test/* や *.dat のようにFossilの管理対象から除外するファイルのファイル名パターン(アスタリスクでワイルドカード指定可能)を1行に1つずつ列挙します。

    例:
    test/*
    *.dat


    この例では、「test」フォルダ内の全ファイルと、拡張子が「dat」のファイルを管理対象から除外します。

  3. ignore-globを他のファイルの場合と同様にFossilのリポジトリデータベースに登録します。

    fossil addremove --dotfiles
    fossil commit .fossil-settings/ignore-glob -m "変更内容の説明など"

バイナリとみなすファイルの設定

Fossilの内部処理では、ソースコードやテキストファイルなどの文字列データと、画像やOfficeドキュメントなどのバイナリデータは区別されており、バイナリファイルは文字列の検証処理から除外しないと警告文(「contains binary data. Use --no-warnings or the "binary-glob" setting to disable this warning.」)が表示されます。(ただし、警告を無視してそのままコミットすることは可能です。)

バイナリファイルを文字列の検証処理から除外するには、以下の手順を行います。
  1. リポジトリのフォルダ内に「.fossil-settings」という名前でフォルダを作成します。(前述「バージョン管理から除外するファイルの設定」で作成済の場合、この操作は不要です。)

  2. .fossil-settings内に「binary-glob」(拡張子なし)というテキストファイルを作成します。このファイルに、*.png や *.docx のようにバイナリとみなすファイルのファイル名パターンを1行に1つずつ列挙します。

    例:
    *.png
    *.jpg
    *.docx


    この例では、拡張子が「png」か「jpg」か「docx」のファイルがバイナリとして処理されるようになります。

  3. binary-globを他のファイルの場合と同様にFossilのリポジトリデータベースに登録します。

    fossil addremove --dotfiles
    fossil commit .fossil-settings/binary-glob -m "変更内容の説明など"

その他の設定

「.fossil-settings」内には、前述の「ignore-glob」と「binary-glob」の他に、Windows式の改行コード(CR+LF)のファイルを設定する「crlf-glob」や、Shit-JISなどUFT-8ではないエンコーディングのファイルを設定する「encoding-glob」などが設置できます。(書き方は「ignore-glob」や「binary-glob」と同様です。)
この記事のタグ:
Fossil

この記事へのコメント