モノレポでのリンティング
モノレポでのリンティングは難しい場合があります。ワークスペースのほとんどは、リンティングが必要なコードを含む可能性が高いため、最も効率的なリンティング方法を考案することが困難です。
このガイドでは、Turborepo の強みを活かす方法を提案します。
- ルートではなく、ワークスペース内で lint タスクを実行する
- ワークスペース間で可能な限り多くの設定を共有する
タスクの実行
単一のlint
タスクを turbo.json
内に指定することをお勧めします。
{
"pipeline": {
"lint": {}
}
}
次に、**リンティングが必要な各ワークスペース内**に、lint
スクリプトを追加します。例として TypeScript を使用します。
{
"scripts": {
"lint": "tsc"
}
}
このパターンには、2 つの利点があります。
つまり、1 つのコマンドでリポジトリ全体をリンティングできます。
turbo run lint
設定ファイルの共有
モノレポ全体で設定を共有すると、開発エクスペリエンスの一貫性を維持するのに役立ちます。ほとんどのリンターには、設定を共有したり、異なるファイル間で設定を拡張したりするためのシステムがあります。
これまで、以下の設定共有に関するガイドを作成してきました。