github/gitignore · Flutter.gitignore

Template .gitignore do Flutter explicado

Explica por que o Flutter.gitignore ignora .dart_tool, build, arquivos gerados por plataforma e chaves de assinatura, e o problema de a regra *.lock bloquear também o pubspec.lock.

Abrir no gerador Abrir junto com Dart, VisualStudioCode, macOS, Android

O Flutter.gitignore trata de forma ampla a pasta de ferramentas do Dart, os resultados de build e os arquivos que o Flutter gera automaticamente dentro das pastas de plataforma de Android, iOS, macOS, Windows e Linux. Uma característica é o uso frequente de **, como em **/ios/**/Pods/.

Este template também contém caminhos do próprio repositório do SDK do Flutter, como /bin/cache/ e /dev/bots/. No repositório de um app esses caminhos não existem, então não causam dano, mas vale saber que o .gitignore criado pelo flutter create se ajusta melhor a um app.

Explicação regra por regra

PadrãoO que ignora e por quê
.dart_tool/.packages.pub/.flutter-plugins.flutter-plugins-dependenciesFerramentas do Dart e do pubSão arquivos que o flutter pub get cria de novo, como os resultados da resolução de pacotes e a lista de plugins.
build/coverage/app.*.symbolsResultados de buildSão os produtos do flutter build, a cobertura de testes e os arquivos de símbolos dos builds ofuscados.
*.lockTodos os arquivos de lockIgnora todos os arquivos .lock. Por isso, pubspec.lock, Podfile.lock e Gemfile.lock também ficam excluídos. É uma regra adequada ao repositório do SDK, mas normalmente não a um app.
**/android/local.properties**/android/key.properties*.jks**/android/**/GeneratedPluginRegistrant.java**/android/gradlewArquivos gerados e segredos do AndroidSão arquivos gerados automaticamente ou secretos: o local.properties com o caminho do SDK, o key.properties com as senhas de assinatura e a keystore, e o código de registro de plugins.
**/ios/**/Pods/**/ios/Flutter/Generated.xcconfig**/ios/Runner/GeneratedPluginRegistrant.***/ios/**/xcuserdata**/macos/Flutter/ephemeralArquivos gerados do iOS e do macOSSão o resultado da instalação do CocoaPods, o xcconfig que o Flutter escreve a cada build, o código de registro de plugins e o estado de usuário do Xcode.
**/windows/flutter/generated_plugin_registrant.cc**/linux/flutter/generated_plugins.cmakeCódigo de registro de plugins de desktopSão arquivos C++ e CMake gerados automaticamente para conectar os plugins nos builds de Windows e Linux.
*.log*.pyc*.swp.historyOutrosSão logs, caches de ferramentas e arquivos temporários do editor.

Cuidados na prática

Template original

Flutter.gitignore94 linhas de regras
# Miscellaneous*.class*.lock*.log*.pyc*.swp.buildlog/.history# Flutter repo-specific/bin/cache//bin/internal/bootstrap.bat/bin/internal/bootstrap.sh/bin/mingit//dev/benchmarks/mega_gallery//dev/bots/.recipe_deps/dev/bots/android_tools//dev/devicelab/ABresults*.json/dev/docs/doc//dev/docs/flutter.docs.zip/dev/docs/lib//dev/docs/pubspec.yaml/dev/integration_tests/**/xcuserdata/dev/integration_tests/**/Pods/packages/flutter/coverage/versionanalysis_benchmark.json# packages file containing multi-root paths.packages.generated# Flutter/Dart/Pub related**/doc/api/.dart_tool/.flutter-plugins.flutter-plugins-dependencies**/generated_plugin_registrant.dart.packages.pub-preload-cache/.pub/build/flutter_*.pnglinked_*.dsunlinked.dsunlinked_spec.ds# Android related**/android/**/gradle-wrapper.jar.gradle/**/android/captures/**/android/gradlew**/android/gradlew.bat**/android/local.properties**/android/**/GeneratedPluginRegistrant.java**/android/key.properties*.jks# iOS/XCode related**/ios/**/*.mode1v3**/ios/**/*.mode2v3**/ios/**/*.moved-aside**/ios/**/*.pbxuser**/ios/**/*.perspectivev3**/ios/**/*sync/**/ios/**/.sconsign.dblite**/ios/**/.tags***/ios/**/.vagrant/**/ios/**/DerivedData/**/ios/**/Icon?**/ios/**/Pods/**/ios/**/.symlinks/**/ios/**/profile**/ios/**/xcuserdata**/ios/.generated/**/ios/Flutter/.last_build_id**/ios/Flutter/App.framework**/ios/Flutter/Flutter.framework**/ios/Flutter/Flutter.podspec**/ios/Flutter/Generated.xcconfig**/ios/Flutter/ephemeral**/ios/Flutter/app.flx**/ios/Flutter/app.zip**/ios/Flutter/flutter_assets/**/ios/Flutter/flutter_export_environment.sh**/ios/ServiceDefinitions.json**/ios/Runner/GeneratedPluginRegistrant.*# macOS**/Flutter/ephemeral/**/Pods/**/macos/Flutter/GeneratedPluginRegistrant.swift**/macos/Flutter/ephemeral**/xcuserdata/# Windows**/windows/flutter/generated_plugin_registrant.cc**/windows/flutter/generated_plugin_registrant.h**/windows/flutter/generated_plugins.cmake# Linux**/linux/flutter/generated_plugin_registrant.cc**/linux/flutter/generated_plugin_registrant.h**/linux/flutter/generated_plugins.cmake# Coveragecoverage/# Symbolsapp.*.symbols# Exceptions to above rules.!**/ios/**/default.mode1v3!**/ios/**/default.mode2v3!**/ios/**/default.pbxuser!**/ios/**/default.perspectivev3!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages!/dev/ci/**/Gemfile.lock

Origem dos templates: github/gitignore/Flutter.gitignore @356fd7b (2026-09-11) · CC0-1.0

Templates usados em conjunto

Outros templates explicados