Flutter 的 .gitignore

适用于 Flutter 的 94 条忽略规则,可直接复制到您的仓库。

用于构建跨平台应用程序的 UI 工具包

Flutter 的完整 .gitignore

# 由 LFGitignore - https://lfgitignore.com 生成
# 创建:2026-10-31 22:52:40 UTC
# 技术:Flutter

### Flutter ###
# Java 编译后的类文件
*.class
# 锁定文件
*.lock
# 日志档案
*.log
*.pyc
# Vim 交换文件
*.swp
.buildlog/
.history
/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/
version
analysis_benchmark.json
.packages.generated
**/doc/api/
.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
**/generated_plugin_registrant.dart
.packages
.pub-preload-cache/
.pub/
# 构建输出目录
build/
flutter_*.png
linked_*.ds
unlinked.ds
unlinked_spec.ds
**/android/**/gradle-wrapper.jar
# Gradle 缓存
.gradle/
**/android/captures/
**/android/gradlew
**/android/gradlew.bat
**/android/local.properties
**/android/**/GeneratedPluginRegistrant.java
**/android/key.properties
# Java 密钥库
*.jks
**/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.*
**/Flutter/ephemeral/
**/Pods/
**/macos/Flutter/GeneratedPluginRegistrant.swift
**/macos/Flutter/ephemeral
**/xcuserdata/
**/windows/flutter/generated_plugin_registrant.cc
**/windows/flutter/generated_plugin_registrant.h
**/windows/flutter/generated_plugins.cmake
**/linux/flutter/generated_plugin_registrant.cc
**/linux/flutter/generated_plugin_registrant.h
**/linux/flutter/generated_plugins.cmake
coverage/
app.*.symbols
!**/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

这些 Flutter 规则实际上忽略了什么

以下列出了每个忽略模式及其加入 .gitignore 的原因。

杂项

模式 忽略的内容
*.class Java 编译后的类文件
*.lock 锁定文件
*.log 日志档案
*.pyc 杂项
*.swp Vim 交换文件
.buildlog/ 杂项
.history 杂项

Flutter 特定于存储库

模式 忽略的内容
/bin/cache/ Flutter 特定于存储库
/bin/internal/bootstrap.bat Flutter 特定于存储库
/bin/internal/bootstrap.sh Flutter 特定于存储库
/bin/mingit/ Flutter 特定于存储库
/dev/benchmarks/mega_gallery/ Flutter 特定于存储库
/dev/bots/.recipe_deps Flutter 特定于存储库
/dev/bots/android_tools/ Flutter 特定于存储库
/dev/devicelab/ABresults*.json Flutter 特定于存储库
/dev/docs/doc/ Flutter 特定于存储库
/dev/docs/flutter.docs.zip Flutter 特定于存储库
/dev/docs/lib/ Flutter 特定于存储库
/dev/docs/pubspec.yaml Flutter 特定于存储库
/dev/integration_tests/**/xcuserdata Flutter 特定于存储库
/dev/integration_tests/**/Pods Flutter 特定于存储库
/packages/flutter/coverage/ Flutter 特定于存储库
version Flutter 特定于存储库
analysis_benchmark.json Flutter 特定于存储库
.packages.generated 包含多根路径的包文件

Flutter/Dart/Pub 相关文件

模式 忽略的内容
**/doc/api/ Flutter/Dart/Pub 相关文件
.dart_tool/ Flutter/Dart/Pub 相关文件
.flutter-plugins Flutter/Dart/Pub 相关文件
.flutter-plugins-dependencies Flutter/Dart/Pub 相关文件
**/generated_plugin_registrant.dart Flutter/Dart/Pub 相关文件
.packages Flutter/Dart/Pub 相关文件
.pub-preload-cache/ Flutter/Dart/Pub 相关文件
.pub/ Flutter/Dart/Pub 相关文件
build/ 构建输出目录
flutter_*.png Flutter/Dart/Pub 相关文件
linked_*.ds Flutter/Dart/Pub 相关文件
unlinked.ds Flutter/Dart/Pub 相关文件
unlinked_spec.ds Flutter/Dart/Pub 相关文件

Android 相关

模式 忽略的内容
**/android/**/gradle-wrapper.jar Android 相关
.gradle/ Gradle 缓存
**/android/captures/ Android 相关
**/android/gradlew Android 相关
**/android/gradlew.bat Android 相关
**/android/local.properties Android 相关
**/android/**/GeneratedPluginRegistrant.java Android 相关
**/android/key.properties Android 相关
*.jks Java 密钥库
**/ios/**/*.mode1v3 iOS/XCode 相关
**/ios/**/*.mode2v3 Android 相关
**/ios/**/*.moved-aside Android 相关
**/ios/**/*.pbxuser Android 相关
**/ios/**/*.perspectivev3 Android 相关
**/ios/**/*sync/ Android 相关
**/ios/**/.sconsign.dblite Android 相关
**/ios/**/.tags* Android 相关
**/ios/**/.vagrant/ Android 相关
**/ios/**/DerivedData/ Android 相关
**/ios/**/Icon? Android 相关
**/ios/**/Pods/ Android 相关
**/ios/**/.symlinks/ Android 相关
**/ios/**/profile Android 相关
**/ios/**/xcuserdata Android 相关
**/ios/.generated/ Android 相关
**/ios/Flutter/.last_build_id Android 相关
**/ios/Flutter/App.framework Android 相关
**/ios/Flutter/Flutter.framework Android 相关
**/ios/Flutter/Flutter.podspec Android 相关
**/ios/Flutter/Generated.xcconfig Android 相关
**/ios/Flutter/ephemeral Android 相关
**/ios/Flutter/app.flx Android 相关
**/ios/Flutter/app.zip Android 相关
**/ios/Flutter/flutter_assets/ Android 相关
**/ios/Flutter/flutter_export_environment.sh Android 相关
**/ios/ServiceDefinitions.json Android 相关
**/ios/Runner/GeneratedPluginRegistrant.* Android 相关
**/Flutter/ephemeral/ macOS
**/Pods/ Android 相关
**/macos/Flutter/GeneratedPluginRegistrant.swift Android 相关
**/macos/Flutter/ephemeral Android 相关
**/xcuserdata/ Android 相关

Windows

模式 忽略的内容
**/windows/flutter/generated_plugin_registrant.cc Windows
**/windows/flutter/generated_plugin_registrant.h Windows
**/windows/flutter/generated_plugins.cmake Windows

Linux

模式 忽略的内容
**/linux/flutter/generated_plugin_registrant.cc Linux
**/linux/flutter/generated_plugin_registrant.h Linux
**/linux/flutter/generated_plugins.cmake Linux

覆盖率

模式 忽略的内容
coverage/ 覆盖率

符号

模式 忽略的内容
app.*.symbols 符号

上述规则的例外情况。

模式 忽略的内容
!**/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 上述规则的例外情况。

如何将此 .gitignore 用于 Flutter

  1. 复制上面的Flutter规则,或者直接下载文件。
  2. 在 Git 仓库根目录创建名为 .gitignore 的文件,并将规则粘贴进去。
  3. 如果其中一些文件已被跟踪,请运行 git rm -r --cached . 然后再次提交 - Git 仅将忽略规则应用于未跟踪的文件。
  4. 提交 .gitignore 以便团队中的每个人都共享相同的规则。

其他 框架 .gitignore 模板

查看每个 框架 模板