🙈

Gemini CLIがgitignore中のファイルを読み込めない時は

に公開

状況

Gemini CLIでファイルを読み込んで欲しい時,そのファイルが.gitignore対象の場合,読み込んでくれないことがある.

例:(gemini -pはプロンプト実行コマンド)

gemini -p "/path/to/file.mp3 を読み込んで"

こんなエラーが出る

Error executing tool read_file: File path '/path/to/file.mp3' is ignored by configured ignore patterns.

原因

Gemini CLIの内部ツールの一部は,デフォルトで.gitignore対象のファイルを無視する.詳しくは公式ドキュメントを参照.

対処法

方針としては,

  1. .gitignoreされているファイルの読み込みを許可
  2. (optional)本当にgeminiに読んで欲しくないファイルは.geminiignoreで指定

1. gitignoreを無視する

使うのは以下の設定ファイル.なければ作成する.

  • グローバル設定: ~/.gemini/settings.json
  • プロジェクト設定: (project path)/.gemini/settings.json

後者が優先される.
そこに以下を追加する.

{
  "context": {
    "fileFiltering": {
      "respectGitIgnore": false
    }
  }
}

2.(optional)読んで欲しくないものは.geminiignoreで除外する

使うのは以下の設定ファイル.なければ作成する.

  • グローバル設定: ~/.gemini/.geminiignore
  • プロジェクト設定: (project path)/.gemini/.geminiignore

後者が優先される.
そこに,geminiに読んで欲しくないファイル・ディレクトリのパスを,gitignoreと同じ書式で記述する.
例:

# mp3ファイルを除外
*.mp3

.geminiignoreの詳細は公式ドキュメントを参照.

他の方法もあるかも

上記以外にも,例えばgeminiコマンドにオプションをつける方法もあるかもしれませんが,見つけられませんでした.ご存知でしたらぜひコメント等で教えてください

GitHubで編集を提案

Discussion