はじめに
チーム開発でよくある悩みのひとつが VS Code の設定管理 です。
- プロジェクトごとに
.vscode/settings.jsonをコピペ - 個人設定とチーム共通設定が混ざりやすい
-
.gitignoreでは細かく制御できない
本来ほしいのは ESLint や Prettier のような extends 機能ですが、VS Code 本体にはまだありません。
そこで役立つのが「Workspace Config+」です。
Workspace Config+とは
Workspace Config+ は、VS Code の設定を「共有」と「ローカル」に分離して管理できる拡張機能です。
-
.shared.json(チーム共有、Git 管理) -
.local.json(個人設定、.gitignore 推奨)
→ これらを自動マージして VS Code に反映してくれます。
対応ファイルは以下の 3 種類です:
-
settings.json(エディター設定) -
tasks.json(タスク設定) -
launch.json(デバッグ設定)
インストール & 基本構成
マーケットプレイスから「Workspace Config+」をインストールします。
code --install-extension swellaby.workspace-config-plus
設定ファイル構成はこんなイメージです:
.vscode/
├── settings.json # 自動生成(編集不要)
├── settings.shared.json # チーム共有設定
├── settings.local.json # 個人設定
.gitignore に以下を追加するのを忘れずに:
.vscode/*.local.json
.vscode/settings.json
実践例: フォーマッターとリンターの統一+個人カスタマイズ
共有設定(settings.shared.json)
チーム全体で統一するルールを記述します。
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"eslint.enable": true,
"eslint.validate": ["javascript", "typescript", "vue"],
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
}
個人設定(settings.local.json)
作業環境に関わる部分は自由にカスタマイズできます。
{
"search.exclude": {
"**/tmp": true,
"**/.history": true
}
}
ポイント
- コード品質に直結する設定(Prettier / ESLint)は共有設定のみ
- 見た目や検索除外などは個人設定で自由に
- CI/CD では共有設定が効くので品質は担保される
メリット・デメリット
| メリット | デメリット |
|---|---|
| Git 管理がシンプル(共有/個人を分離できる) | チーム全員が拡張機能を入れる必要がある |
| どの設定が共有か一目でわかる | ユーザー全体設定は対象外 |
| 変更がリアルタイムに反映される |
まとめ
Workspace Config+ を導入すれば、
- コードスタイルはチームで統一
- 開発体験は個人が自由に
という理想的なバランスが実現できます。
「複数人で開発」「異なる OS 環境」「個人の好みを尊重したい」チームに特におすすめです。
設定ファイルの衝突やコピペに悩んでいるなら、ぜひ試してみてください!