I have developed a small utility in order to synchronize your visual studio code settings across multiple machines. Whether your editor settings are changed in office you can set synchronize that settings in home editor also.

MARKETPLACE URL : Visual Studio Code Settings Sync

To Install : type “ext install code-settings-sync”

Type Sync in command Palette in order to view all commands.

Key Features

  • Use your GitHub account token and Gist.
  • Easy to Upload and Download on one click.
  • Show a summary page at the end with details about config and extensions effected.
  • Auto Download Latest Settings on Startup.
  • Auto upload Settings on file change.
  • Share the Gist with other users and let them download your settings.
  • Supports GitHub Enterprise

It Syncs

All the extensions and complete User Folder that Contains

  • Settings File
  • Keybinding File
  • Launch File
  • Snippets Folder
  • VSCode Extensions Settings
  • Workspaces

Shortcuts

  • Upload Key : Shift + Alt + U
  • Download Key : Shift + Alt + D

Steps To Get a Personal Access Token from GitHub

This extension requires a Personal Access Token from your GitHub account. You can create one by simply following the steps shown in the pictures below. Make sure you add Gist in scope.

Go to Settings / Developer settings / Personal access tokens / Generate New Token**

Goto Settings / Personal Access Tokens

Select Gist From Scopes

Select Scopes

Get an Access Token

Get Unique Key

Save the Token somewhere for future use (i.e. to upload from other machines).

Upload Your Settings For the first time

Type “Sync : Upload” in command

Shortcut key is : Shift + Alt + u

This will automatically open your GitHub settings page, allowing you to generate a new token for the application, as explained in the previous section. This token will allow the extension to create gists.

Enter the GitHub token in the window and click enter.

github account access token

Upload your settings automatically and give you GIST ID.

Gist ID is needed to access the data you have uploaded with your token. Copy this Gist ID in order to download the settings to other machines.

uploaded automatically

You can always verify created gist on the following url:

https://gist.github.com/{your_userName}/{gist_id}

Here is the gif of the complete process when you execute the Upload command (Might take some time to load)

Upload

Download your Settings

Type “Sync : Download” in command it will ask your GitHub Gist ID

Shortcut Key : Shift + Alt + d

Enter Your GitHub Token

Enter the GitHub token in the window and click enter.

github account access token

Enter Your GIST ID.

You need to enter your Gist ID in order to download the files you have uploaded with Shift + Alt + U.

Enter Your Gist ID

Settings Downloaded.

You are Done ! All your files are downloaded and it will start downloading your extensions in the background and will let you know to restart the VSCode in order to use the installed extensions.

Enter Your GIST ID

Here is the gif of the complete process when you execute the Download command (Might take time to load)

Download

Reset Token / GIST Settings

Type “>Sync” In Command Palette and select Reset Token and GIST Settings

Toggle Auto Download

Auto Download is disabled by default. It will sync all the setting by default when the editor starts. Please make sure you have valid github Token and Gist available to make it work properly.

Select Command “Sync : Advance Options > Toggle Auto-Download On Startup” command to Turn ON / OFF the auto download.

Toggle Force Download

Force Download is disabled by default. By default extension wont download the latest settings if you already have latest downloaded version , but sometime when you delete some extension locally and dont upload the settings it will still show you have latest versions by date or time checks, by turning this ON it will always download the cloud settings on startup.

Please make sure you have valid github Token and Gist available to make it work properly.

Select Command “Sync : Advance Options > Toggle Force Download” command to Turn ON / OFF the force download.

Toggle Auto-Upload on change

Auto-upload is disabled by default. When the settings are changed and saved this feature will automatic start the upload process and save the settings online.

Please make sure you have valid github Token and Gist available to make it work properly.

Select Command “Sync : Advance Options > Toggle Auto-Upload on Setting Change” command to Turn ON / OFF the auto-upload.

Toggle Summary

Summary is enabled by default which shows all the files and extensions that are added or deleted in a single page. You may turn it off in order to make a upload and download process clean and quiet.

Select Command “Sync : Advance Options > Toggle Summary Page On Upload / Download” command to Turn ON / OFF the auto download.

Create Public Gist To Share Settings

By default, it creates secret Gist so only you can see it but if you want to share your Gist with other users, you can set it to public. You can’t change the exiting Gist type from secret to public so it will reset the Gist ID so you can create new Gist with all the existing editor settings.

Select Command “Sync : Advance Options > Share Settings with Public GIST”

Other users can give your Gist Id to download the Gist, but they cant upload their settings on your Gist.

For details regarding settings keys, click here

If you are want to share the settings with your users or team members, see the detailed post here

Drawing

If you enjoy this extension. How about donating, Your donation will help me to keep working and supporting this project.

To Install : type “ext install code-settings-sync”

MARKETPLACE URL : Visual Studio Code Settings Sync