内容

不要提交的内容

当您将 Dart 源代码放入存储库(使用 pub 工具GitHub 或其他源代码管理系统)时,请勿包含您的 IDE 或代码编辑器、pub 工具和其他工具生成的大多数文件。

规则

#

不要提交 pub 创建的以下文件和目录

.dart_tool/
build/
pubspec.lock  # Except for application packages

不要提交 dart doc 创建的 API 文档目录

doc/api/

不要提交 其他开发环境创建的文件和目录。例如,如果您的开发环境创建了以下任何文件,请考虑将其放入全局忽略文件

# IntelliJ
*.iml
*.ipr
*.iws
.idea/

# Mac
.DS_Store

更多详细信息,请继续阅读。

详情

#

通常,仅提交人们使用您的包或源代码存储库所需的文件。包含其他文件是不必要的,可能会适得其反,如果您公开有关您机器设置的详细信息,则可能存在安全隐患。在许多源代码存储库中,常见做法是不提交生成的文件。

为了避免提交特定于您的个人工作流程或设置的文件,请考虑使用全局忽略文件(例如,.gitignore_global)。

当您在 Git 存储库中使用 pub 时,pub 会忽略 Git 忽略的文件。例如,如果您从包含 keys.txt.gitignore 文件的 Git 存储库运行 pub publish,则发布的包将不包含 keys.txt 文件。

有关 .gitignore 文件的更多信息,请参阅 GitHub 帮助页面 忽略文件。

.dart_tool/

#

.dart_tool/ 目录包含各种 Dart 工具使用的文件。

pubspec.lock

#

pubspec.lock 文件是一个特殊情况,类似于 Ruby 的 Gemfile.lock

对于常规包不要提交 pubspec.lock 文件。重新生成 pubspec.lock 文件使您可以针对其依赖项的最新兼容版本测试您的包。

对于应用程序包,我们建议您提交 pubspec.lock 文件。对 pubspec.lock 文件进行版本控制可确保对传递依赖项的更改是明确的。每次由于 dart pub upgradepubspec.yaml 中的更改而导致依赖项更改时,锁定文件中的差异将很明显。