儲存庫
文件
程式碼檢查

在單一儲存庫中執行 linting

在單一儲存庫中執行 linting 可能很棘手。大部分的工作區可能會包含需要執行 linting 的程式碼,因此找出執行 linting 的最高效率方式很困難。

在本指南中,我們將提出一個發揮 Turborepo 優勢的方法

  • 在工作區內部執行 linting 任務,而非從根目錄執行
  • 在工作區之間共用盡可能多的設定

執行任務

我們建議在 turbo.json 中指定單一 lint 任務。

{
  "pipeline": {
    "lint": {}
  }
}

然後,在需要執行 linting 的每個工作區中,新增一個 lint 腳本。我們將使用 TypeScript 作為範例

{
  "scripts": {
    "lint": "tsc"
  }
}

此模式有兩個好處

  • 平行化:linting 任務將同時執行,加快執行速度
  • 快取lint 任務只會在已變更的工作區中重新執行

這表示你可以使用一個指令對整個儲存庫執行 linting

turbo run lint

共用設定檔

在單一儲存庫中共用設定有助於保持開發體驗的一致性。大部分的 linter 都會有共用設定或在不同檔案中延伸設定的系統。

到目前為止,我們已經建立了在以下位置共用設定的指南