跳到主內容

不應提交的檔案

當您將 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 中的更改導致依賴項發生變化時,這些差異都將在鎖定檔案中顯而易見。