Previously known as Visual Studio Code Settings Sync
While being free and open source, if you find it useful, please consider supporting it by donating via PayPal or Open Collective. If you are using it in office as a team, please ask your company to support us via Open Collective from just $2 per month!
|
$2 per Month |
Type ">Sync" in the Command Palette in order to view all commands.
- 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.
- Support pragmas with @sync keywords: host, os and env are supported.
- GUI for changing settings / logging in.
- Allows you to Sync any file across your machines.
All extensions and complete User Folder that contains:
- Settings File
- Keybinding File
- Launch File
- Snippets Folder
- VSCode Extensions & Extensions Configurations
- Workspaces Folder
- Upload Key:
Shift
+Alt
+U
(macOS:Shift
+Option
+U
) - Download Key:
Shift
+Alt
+D
(macOS:Shift
+Option
+D
)
Settings Sync Configuration page will be opened automatically on code start and requires two things to setup:
- GitHub token
- GitHub gist ID
GitHub token needs to be retrieved by your GitHub account while Settings Sync creates a gist if you are first time user.
Follow these steps to configure:
- Click on
Login with GitHub
. - Login to GitHub in the browser and close the browser tab once you get the success message.
- If you are using Settings Sync for the first time, a gist will be created automatically when you upload your settings.
- If you already have a GitHub gist, a new window will be opened to allow you to select the GitHub gist or
Skip
to create a new gist.
You can always verify the created gist by going to https://gist.github.com
and checking for a gist named cloudSettings
.
Press Shift
+ Alt
+ U
(macOS: Shift
+ Option
+ U
)
Select ">Sync: Update/Upload Settings" in the Command Palette to upload your settings.
When downloading or uploading for the first time, the welcome page will automatically open, where you can configure the Settings Sync.
Once you select upload, after uploading the settings, you will see a summary containing a list of each of the files and extensions uploaded.
Press Shift
+ Alt
+ D
(macOS: Shift
+ Option
+ D
)
Select ">Sync: Download Settings" in the Command Palette to download your settings.
When downloading or uploading for the first time, the welcome page will automatically open, where you can configure the Settings Sync.
Once you select download, after downloading the settings, you will see a summary containing a list of each of the files and extension downloaded.
A popup will be opened to allow you to restart Code to apply the settings.
Select ">Sync: Reset Extension Settings" in the Command Palette to reset your settings.
Select ">Sync: Advanced Options > Open Settings" in the Command Palette to open the settings page.
There are two types of settings in Settings Sync.
I recommend that you read the configurations details here.
Gist settings are stored in the settings.json
file of Code.
You can customize gist settings as follows:
- Configure gist ID (environment)
- Configure auto upload / download for GitHub gist
- Configure extension sync behaviour
- Configure force download
- Configure force upload
- Configure quiet sync
"sync.gist": "0c929b1a6c51015cdc9e0fe2e369ea4c",
"sync.autoDownload": false,
"sync.autoUpload": false,
"sync.forceDownload": false,
"sync.forceUpload": false,
"sync.quietSync": false,
"sync.sortAlphabetically": false,
"sync.removeExtensions": true,
"sync.syncExtensions": true
Global settings are stored in syncLocalSettings.json
inside the User
folder. These settings will be shared across multiple gist environments.
You can customize the sync as follows:
- Options by which files / folders and settings to exclude from upload.
- Configure default gist environment name.
- Replace the code settings after downloading.
- Change the gist description while creating new one in GitHub.
- Configure GitHub Enterprise Url.
{
"ignoreUploadFiles": [
"state.*",
"syncLocalSettings.json",
".DS_Store",
"sync.lock",
"projects.json",
"projects_cache_vscode.json",
"projects_cache_git.json",
"projects_cache_svn.json",
"gpm_projects.json",
"gpm-recentItems.json"
],
"ignoreUploadFolders": ["workspaceStorage"],
"ignoreExtensions": [],
"gistDescription": "Visual Studio Code Settings Sync Gist",
"version": 340,
"token": "YOUR_GITHUB_TOKEN",
"downloadPublicGist": false,
"supportedFileExtensions": ["json", "code-snippets"],
"openTokenLink": true,
"disableUpdateMessage": false,
"lastUpload": null,
"lastDownload": null,
"githubEnterpriseUrl": null,
"askGistDescription": false,
"customFiles": {},
"hostName": null,
"universalKeybindings": false,
"autoUploadDelay": 20
}
I recommend you read the configurations details here.
Auto-Upload is disabled by default. When the settings are changed and saved this feature will automatically start the upload process and save the settings online.
Please make sure you have a valid GitHub token and gist available to make it work properly.
Select "Sync: Advanced Options > Toggle Auto-Upload on Settings Change" in the Command Palette to turn Auto-Upload ON / OFF.
Auto-Download is disabled by default. It will sync all the setting by default when the editor starts. Please make sure you have a valid GitHub token and gist available to make it work properly.
Select "Sync: Advanced Options > Toggle Auto-Download On Startup" in the Command Palette to turn Auto-Download ON / OFF.
Force Download is disabled by default. By default, the extension won't download the latest settings if you already have the latest version downloaded, but sometimes when you delete an extension locally and don't upload the settings it will still show that you have the 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 a valid GitHub token and gist available to make it work properly.
Select "Sync: Advanced Options > Toggle Force Download" in the Command Palette to turn Force Download ON / OFF.
Force Upload is disabled by default. By default, this extension won't upload the settings if the gist has newer or identical content. By turning this ON it will always upload without checking for newer settings in the gist.
Please make sure you have a valid GitHub token and gist available to make it work properly.
Select "Sync: Advanced Options > Toggle Force Upload" in the Command Palette to turn Force Upload ON / OFF.
Summary is enabled by default. It shows all files and extensions that are added or deleted on a single page. You may turn it off in order to make the upload and download processes clean and quiet.
Select "Sync: Advanced Options > Show Summary Page On Upload / Download" in the Command Palette to turn Auto Download ON / OFF.
Settings Sync allows you to sync the files other from User
folder. For example, your workspace settings and much more. It's upon you to utilize the full potential of Settings Sync across your machines or your team's machines. Read about custom sync here.
You can even manage which settings you want to ignore from being uploaded or downloaded. Settings Sync even allows you to manage your home
and office
computer specific settings, even OS related settings, in a single GitHub gist. Read details about Sync Pragmas here.
If you are looking to share your settings. Read the details here. Settings Sync needs to create new public GitHub gist to share your settings with other users.
If you ever run into problems while setting up the Settings Sync. You can check our troubleshooting guide that cover those scenarios here, you can also add your solution there if it's not available there to help other users.
You can contribute in different ways, read the details here.
Fix and Earn - You can also earn money by fixing the issues, check the issues under bounty program here.
Thank you to all the people who have already contributed to Settings Sync!
Thank you to all our backers! (Become a backer)
Thank you to all our sponsors! (Please ask your company to also support this open source project by becoming a sponsor)