.gitignore for Unity

55 ignore rules for Unity, ready to copy into your repository.

Cross-platform game engine

The complete .gitignore for Unity

# Generated by LFGitignore - https://lfgitignore.com
# Created: 2026-03-04 01:31:38 UTC
# Technologies: Unity

### Unity ###
.utmp/
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Uu]ser[Ss]ettings/
# Log file
*.log
*.blend1
*.blend1.meta
/[Mm]emoryCaptures/
/[Rr]ecordings/
/[Aa]ssets/Plugins/Editor/JetBrains*
*.DotSettings.user
.vs/
# Gradle cache
.gradle/
# Exported objects
ExportedObj/
# Consulo project files
.consulo/
# C# project file
*.csproj
# Unity project file
*.unityproj
# Visual Studio solution
*.sln
# Solution user options
*.suo
# Temporary files
*.tmp
# User-specific settings
*.user
# User preferences
*.userprefs
# Unity project database
*.pidb
# Unity Boo project
*.booproj
# Unity data file
*.svd
# Program debug database
*.pdb
*.mdb
*.opendb
*.VC.db
# Unity metadata
*.pidb.meta
# Unity debug metadata
*.pdb.meta
# Unity debug metadata
*.mdb.meta
sysinfo.txt
mono_crash.*
# Android package
*.apk
# Android app bundle
*.aab
*.unitypackage
*.unitypackage.meta
# Application bundle
*.app
# Crashlytics build
crashlytics-build.properties
InitTestScene*.unity*
/ServerData
/[Aa]ssets/StreamingAssets/aa*
/[Aa]ssets/AddressableAssetsData/link.xml*
/[Aa]ssets/Addressables_Temp*
/[Aa]ssets/AddressableAssetsData/*/*.bin*
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Flow/UnitOptions.db
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Flow/UnitOptions.db.meta
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Core/Property Providers
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Core/Property Providers.meta
/[Aa]ssets/[Ii]nit[Tt]est[Ss]cene*.unity*

What these Unity rules actually ignore

Every pattern below, and why it belongs in your .gitignore.

General

Pattern What it ignores
.utmp/ This .gitignore file should be placed at the root of your Unity project directory Get latest from https://github.com/github/gitignore/blob/main/Unity.gitignore
/[Ll]ibrary/ General
/[Tt]emp/ General
/[Oo]bj/ General
/[Bb]uild/ General
/[Bb]uilds/ General
/[Ll]ogs/ General
/[Uu]ser[Ss]ettings/ General
*.log Log file

By default unity supports Blender asset imports, *.blend1 blender files do not need to be commited t

Pattern What it ignores
*.blend1 By default unity supports Blender asset imports, *.blend1 blender files do not need to be commited t
*.blend1.meta By default unity supports Blender asset imports, *.blend1 blender files do not need to be commited t

They also could contain extremely sensitive data

Pattern What it ignores
/[Mm]emoryCaptures/ They also could contain extremely sensitive data

Recordings can get excessive in size

Pattern What it ignores
/[Rr]ecordings/ Recordings can get excessive in size

Autogenerated Jetbrains Rider plugin

Pattern What it ignores
/[Aa]ssets/Plugins/Editor/JetBrains* Autogenerated Jetbrains Rider plugin

Jetbrains Rider personal-layer settings

Pattern What it ignores
*.DotSettings.user Jetbrains Rider personal-layer settings

Visual Studio cache directory

Pattern What it ignores
.vs/ Visual Studio cache directory

Gradle cache directory

Pattern What it ignores
.gradle/ Gradle cache

Autogenerated VS/MD/Consulo solution and project files

Pattern What it ignores
ExportedObj/ Exported objects
.consulo/ Consulo project files
*.csproj C# project file
*.unityproj Unity project file
*.sln Visual Studio solution
*.suo Solution user options
*.tmp Temporary files
*.user User-specific settings
*.userprefs User preferences
*.pidb Unity project database
*.booproj Unity Boo project
*.svd Unity data file
*.pdb Program debug database
*.mdb Autogenerated VS/MD/Consulo solution and project files
*.opendb Autogenerated VS/MD/Consulo solution and project files
*.VC.db Autogenerated VS/MD/Consulo solution and project files

Unity3D generated meta files

Pattern What it ignores
*.pidb.meta Unity metadata
*.pdb.meta Unity debug metadata
*.mdb.meta Unity debug metadata

Unity3D generated file on crash reports

Pattern What it ignores
sysinfo.txt Unity3D generated file on crash reports

Mono auto generated files

Pattern What it ignores
mono_crash.* Mono auto generated files

Builds

Pattern What it ignores
*.apk Android package
*.aab Android app bundle
*.unitypackage Builds
*.unitypackage.meta Builds
*.app Application bundle

Crashlytics generated file

Pattern What it ignores
crashlytics-build.properties Crashlytics build

TestRunner generated files

Pattern What it ignores
InitTestScene*.unity* TestRunner generated files

Addressables default ignores, before user customizations

Pattern What it ignores
/ServerData Addressables default ignores, before user customizations
/[Aa]ssets/StreamingAssets/aa* Addressables default ignores, before user customizations
/[Aa]ssets/AddressableAssetsData/link.xml* Addressables default ignores, before user customizations
/[Aa]ssets/Addressables_Temp* Addressables default ignores, before user customizations
/[Aa]ssets/AddressableAssetsData/*/*.bin* By default, Addressables content builds will generate addressables_content_state.bin files in platform-specific subfolders, for example: /Assets/AddressableAssetsData/OSX/addressables_content_state.bin

Visual Scripting auto-generated files

Pattern What it ignores
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Flow/UnitOptions.db Visual Scripting auto-generated files
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Flow/UnitOptions.db.meta Visual Scripting auto-generated files
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Core/Property Providers Visual Scripting auto-generated files
/[Aa]ssets/Unity.VisualScripting.Generated/VisualScripting.Core/Property Providers.meta Visual Scripting auto-generated files

Auto-generated scenes by play mode tests

Pattern What it ignores
/[Aa]ssets/[Ii]nit[Tt]est[Ss]cene*.unity* Auto-generated scenes by play mode tests

How to use this .gitignore for Unity

  1. Copy the Unity rules above, or download the file directly.
  2. Create a file named .gitignore at the root of your Git repository and paste the rules into it.
  3. If some of those files are already tracked, run git rm -r --cached . then commit again — Git only applies ignore rules to untracked files.
  4. Commit the .gitignore so everyone on the team shares the same rules.

Other Game Engine .gitignore templates

See every Game Engine template