📑

VSCodeの設定について、すこし整理

2022/05/09に公開

設定画面

User

~/AppData/Roaming/Code/User/settings.json

同期がONの場合、MSクラウド経由で、アカウント毎に共有されます。

Remote

~/vscode-server/data/Machine/settings.json

リモート開発の場合、サーバー・アカウント(SSHログイン)のルートに保存されます。

  • サーバーに複数ワークスペースがある場合、全部影響します。
  • デフォルトでは、共有する仕組みが提供されていない。

※ dotfilesとして、管理するのがよさそう。

Workspace

.vscode/settings.json
  • ワークスペースのルートに保存されます。
  • Gitにアップする場合、チーム全員に共有されます。

優先順位

設定がこの順番で読み込んいるので、同じ設定が複数ある場合、後で読み込んだ設定は、前の設定をオーバーライドします。

User
↓
Remote
↓
Workspace

質問

  • Remoteの場合
    • 自分専用アカウントの場合、Remote設定を編集すれば、OK
    • 共有アカウントの場合、NG
  • Workspaceの場合
    • settings.jsonを編集しますが、コミットしない → いつか失う、心配 → git stashすれば、一時退避可能です。

うん、stashをエクスポートし、別の端末に転送して、適用すれば、できます(パッチを送るイメージです)。詳しくは、Googleでgit export stashを検索すれば、いっぱい出てきますので、ここで割愛します。

おまけ

設定以外に、拡張もチームで共有した場合、「Add to Workspace Recommendations」をクリックしたら、extensions.jsonに保存されますので、このextensions.jsonをgitにコミットすれば、共有できます。

.vscode/extensions.json

Discussion