Exclude files from Gemini Code Assist use

Gemini Code Assist supports excluding files from your context for code generation, code completion, code transformation, and chat. For Enterprise users, this also includes code customization.

In many scenarios, you'll have specific files or subtrees that you don't want to have included in your context.

You can exclude these files through the use of an .aiexclude or .gitignore file.

Write an .aiexclude file

An .aiexclude file follows the following syntax:

Examples

The following examples demonstrate how you can configure an .aiexclude file:

  • Block all files named apikeys.txt at or below the directory that contains the .aiexclude file:

    apikeys.txt
    
  • Block all files with the .key file extension at or below the directory that contains the .aiexclude file:

    *.key
    
  • Block only the apikeys.txtfile at the same directory as the .aiexclude file, but not any subdirectories:

    /apikeys.txt
    
  • Block all files in the directory my/sensitive/dir and all subdirectories. The path should be relative to the directory that contains the .aiexclude file.

    my/sensitive/dir/
    
  • Blocks all the files in directory foo and its subdirectories except file named bar.txt in the foo directory.

    foo/*
    !foo/bar.txt
    

Control access to index for code customization

By default, code customization indexes all the supported code files in your specified repositories.

To prevent exposure of code that you don't want to to be used in the context, you can use branch patterns to control access to your index and use a stable branch, such as main.

Alternatively, you can also exclude files from the context by creating an .aiexclude file.