Gemini Code Assist の使用からファイルを除外する

Gemini Code Assist は、コード生成、コード補完、コード変換、チャットのコンテキストからファイルを除外することをサポートしています。Enterprise ユーザーの場合は、コードのカスタマイズも含まれます。

多くの場合、コンテキストに含めたくない特定のファイルまたはサブツリーがあります。

これらのファイルを除外するには、.aiexclude ファイルまたは .gitignore ファイルを使用します。

コンテキストの除外設定を構成する

このセクションでは、.aiexclude ファイルと .gitignore ファイルの設定を構成する方法について説明します。

.aiexclude ファイルを任意のファイルに変更

デフォルトでは、コンテキスト除外は .aiexclude を使用するように設定されています。IDE でこの設定を変更する手順は次のとおりです。

VS Code

  1. アクティビティ バーで、設定アイコン [Manage] > [Settings] をクリックします。

  2. [設定] ウィンドウで、[拡張機能] > [Gemini Code Assist] に移動します。[Context Exclusion File] が表示されるまでスクロールします。

  3. テキスト フィールドで、.aiexclude をご希望の場所に変更します。

これで、選択したファイルがコンテキスト除外ファイルとして設定されました。

IntelliJ

JetBrains IDE では、.aiexclude ファイルと .gitignore ファイルの設定はサポートされていません。

.gitignore コンテキストの除外を変更

デフォルトでは、.gitignore ファイルはコンテキスト除外用に有効になっています。ファイルは、Gemini Code Assist のルート作業フォルダに配置する必要があります。サブディレクトリにある .gitignore ファイルは考慮されず、マージもされません。

コンテキスト除外から .gitignore ファイルを無効にするには、次の手順を行います。

  1. アクティビティ バーで、設定アイコン [Manage] > [Settings] をクリックします。

  2. [設定] ウィンドウで、[拡張機能] > [Gemini Code Assist] に移動します。[Context Exclusion Gitignore] が表示されるまでスクロールします。

  3. チェックボックスをオフにします。

    Gemini Code Assist が無視するファイルを指定するための .gitignore ファイルが無効になりました。

.aiexclude ファイルを作成する

.aiexclude ファイルの構文は次のとおりです。

次の例は、.aiexclude ファイルを構成する方法を示しています。

  • .aiexclude ファイルが含まれているディレクトリまたはその下にある apikeys.txt という名前のすべてのファイルをブロックします。

    apikeys.txt
    
  • .aiexclude ファイルが含まれているディレクトリまたはその下にある .key ファイル拡張子を持つすべてのファイルをブロックします。

    *.key
    
  • .aiexclude ファイルと同じディレクトリにある apikeys.txt ファイルのみをブロックします。サブディレクトリはブロックしません。

    /apikeys.txt
    
  • ディレクトリ my/sensitive/dir とすべてのサブディレクトリ内のすべてのファイルをブロックします。パスは、.aiexclude ファイルを含むディレクトリの相対パスにする必要があります。

    my/sensitive/dir/
    
  • foo ディレクトリの bar.txt という名前のファイルを除き、ディレクトリ foo とそのサブディレクトリ内のすべてのファイルをブロックします。

    foo/*
    !foo/bar.txt
    

コード カスタマイズ用のインデックスへのアクセスを制御する

デフォルトでは、コード カスタマイズは、指定したリポジトリ内のサポートされているコードファイルをすべてインデックスに登録します。

コンテキストで使用したくないコードが公開されないようにするには、ブランチ パターンを使用してインデックスへのアクセスを制御し、main などの安定したブランチを使用します。

また、.aiexclude ファイルを作成して、コンテキストからファイルを除外することもできます。