背景
モノリポ(単一リポジトリに複数のプロジェクトをまとめる手法)を使っていると、ルートディレクトリの settings.json がごちゃごちゃになってて、見づらいなぁと思ってた ![]()
MS の tech blog を社内に飛ばしてるんだけど、そこで、Multi Root Workspace ってキーワードを見かけて気づいたのがこれ。
front/back で 言語混在してるときにいい感じな気がするので試してみようと思い調べた記録
記憶の中の記事は以下
概要
- マルチルートワークスペースは、複数のフォルダを独立したルートとして扱う機能
- 各プロジェクトの .vscode/settings.json を分離して管理可能
- モノリポで個別プロジェクトの独立性を保ちつつ、統合管理ができる
詳細
マルチルートワークスペースとは
VS Code の .code-workspace ファイルで、folders 配列に複数の path/name を定義する。これにより、各フォルダが独立したプロジェクトルートになる。
{
"folders": [
{ "path": "src/python", "name": "Python" },
{ "path": "src/javascript", "name": "JavaScript" },
{ "path": "src/csharp", "name": "CSharp" }
]
}
設定の分離
- 通常のワークスペース: ルート設定が全プロジェクトに適用され、混在しやすい
- マルチルート: 各フォルダの .vscode/settings.json が専用に適用
例: src/python/.vscode/settings.json に Python 設定、src/javascript/.vscode/settings.json に JavaScript 設定を置く。ルート設定は共通部分のみ。
モノリポ統合の利点
別プロジェクトだったものをモノリポにまとめやすくなる。Git 履歴や CI/CD を共有しつつ、開発時は分離されたまま。
あとがき
きたなくなっていたルート設定を分離でき、モノリポの運用が楽になりそう。
参考リンク
VS Code Multi-root Workspaces