VS Code is beloved for its endless customization possibilities.
However, you may come across the challenge of having many multiple VS Code instances needing to share the same extensions, themes and settings. Since every start of a Gitpod workspace is a new instance of VS Code, using Settings Sync helps you avoid re-setting your environment for each new workspace and embrace ephemeral Gitpod workspaces.
Once enabled, Settings Sync polls the backend to ensure that your settings are stored. To save network bandwidth and allow for more frequent synchronization only changed items are pushed to the server after the first sync.
The following settings are synced via Settings Sync:
By default, most desktop VS Code installations are configured to sync settings via a GitHub or a Microsoft account. These settings are synced to Microsoft’s servers and are inaccessible to third-parties, including Gitpod. Due to this limitation of access to settings stored in Microsoft servers, Gitpod implements its own VS Code settings sync server. Gitpod Settings Sync is enabled by default for VS Code in the browser, but must be configured for desktop.
VS Code in the browser with Gitpod has Settings Sync enabled by default, syncing preferences to Gitpod’s servers.
- Install and enable the Gitpod extension.
Note: If you open VS Code Desktop directly from Gitpod, the Gitpod extension is automatically installed for you.
- Using the Command Palette select: “Settings Sync: Enable signing in with Gitpod”.
Enable Settings Sync with Gitpod
- Restart your VS Code Desktop application.
Important: You must entirely close VS Code Desktop for changes to take effect.
- Enable settings sync from the Manage gear menu at the bottom of the Activity Bar.
You must authenticate with Gitpod to enable settings sync.
You will be prompted which settings to sync, and to authenticate via Gitpod.
- Resolve any settings conflicts
Settings in VS Code Desktop might differ from your remote settings, follow the instructions in VS Code to resolve any conflicts with the preferences files.
settings sync off in your VS Code Command Palette and hit Enter
Note: This will only work properly inside of VS Code Desktop. If you choose to disable Settings Sync inside of VS Code Browser, you will have to disable it in every new workspace and every time a workspace restarts.