github/gitignore · Flutter.gitignore

Modèle .gitignore Flutter expliqué

Explique pourquoi Flutter.gitignore ignore .dart_tool, build, les fichiers générés par plateforme et les clés de signature, et le problème posé par la règle *.lock qui bloque jusqu'à pubspec.lock.

Ouvrir dans le générateur Ouvrir avec Dart, VisualStudioCode, macOS, Android

Flutter.gitignore couvre largement le dossier des outils Dart, les résultats de build et les fichiers générés automatiquement par Flutter dans les dossiers de plateforme Android·iOS·macOS·Windows·Linux. Il se caractérise par un usage fréquent de **, comme dans **/ios/**/Pods/.

Ce modèle contient aussi des chemins propres au dépôt du SDK Flutter lui-même, comme /bin/cache/ ou /dev/bots/. Ils n'existent pas dans un dépôt d'application et ne font donc pas de mal, mais sachez que le .gitignore créé par flutter create convient mieux à une application.

Explication règle par règle

MotifCe qui est ignoré et pourquoi
.dart_tool/.packages.pub/.flutter-plugins.flutter-plugins-dependenciesOutils Dart·pubFichiers que flutter pub get recrée, comme le résultat de la résolution des paquets et la liste des plugins.
build/coverage/app.*.symbolsRésultats de buildSorties de flutter build, couverture de tests et fichiers de symboles des builds obfusqués.
*.lockTous les fichiers de verrouillageIgnore tous les fichiers .lock. Par conséquent, pubspec.lock, Podfile.lock et même Gemfile.lock sont exclus. Cette règle convient au dépôt du SDK, mais généralement pas à une application.
**/android/local.properties**/android/key.properties*.jks**/android/**/GeneratedPluginRegistrant.java**/android/gradlewFichiers générés et secrets AndroidFichiers générés automatiquement ou secrets : local.properties qui contient le chemin du SDK, key.properties et le keystore qui contiennent le mot de passe de signature, code d'enregistrement des plugins, etc.
**/ios/**/Pods/**/ios/Flutter/Generated.xcconfig**/ios/Runner/GeneratedPluginRegistrant.***/ios/**/xcuserdata**/macos/Flutter/ephemeralFichiers générés iOS·macOSRésultat de l'installation CocoaPods, xcconfig réécrit par Flutter à chaque build, code d'enregistrement des plugins et état utilisateur de Xcode.
**/windows/flutter/generated_plugin_registrant.cc**/linux/flutter/generated_plugins.cmakeCode d'enregistrement des plugins de bureauFichiers C++ et CMake générés automatiquement pour relier les plugins lors des builds Windows·Linux.
*.log*.pyc*.swp.historyDiversLogs, caches d'outils et fichiers temporaires d'éditeurs.

Points d'attention en pratique

Modèle d'origine

Flutter.gitignore94 règles
# 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

Source des modèles : github/gitignore/Flutter.gitignore @356fd7b (2026-09-11) · CC0-1.0

Modèles utilisés ensemble

Autres modèles expliqués