Synchronized settings for Visual Studio are turned on by default. You can turn off synchronized settings on a computer by going to the Tools > Options > Environment > Accounts page and clearing the Synchronize settings across devices and installs on this machine (enabling this may overwrite local settings) checkbox.
I have developed an extension that will sync all your Visual Studio Code Settings across multiple instances.
Key Features
It Sync
Detail Documentation Source
VSCode - Settings Sync blog post
Download here : VS Code - Settings Sync - Extention
You can make a hard link from the directory containing user settings to your sync directory of applications such as Dropbox or OneDrive.
For example, on windows, the user settings are located in %APPDATA%\Code\User
, so you could type:
mklink /H /J X:\Your\Sync\Dir %APPDATA%\Code\User
on your computers with Visual Studio Code to achieve the synchronization.
Then, on another computer, you may delete the %APPDATA%\Code\User
folder, and type:
mklink /H /J %APPDATA%\Code\User X:\Your\Sync\Dir
to retrieve the synchronized settings.
Aha, you can try my VSCode extension: Syncing.
Hoping you'll like it. :)
Install Syncing:
Get your own GitHub Personal Access Token
:
Login to your GitHub Settings
page.
Select Personal access tokens
tab and click Generate new token
.
Select gist
and click Generate token
.
Copy and backup your token.
Sync your settings:
Syncing
will ask for necessary information for the first time
and save for later use
.
Upload:
Type upload
in VSCode Command Palette
.
Enter your GitHub Personal Access Token
.
Enter your Gist ID
(or leave it blank
to create automatically).
Done!
After uploading, you can find your settings and the corresponding Gist ID
in your GitHub Gist.
Download:
Type download
in VSCode Command Palette
.
Enter your GitHub Personal Access Token
(or leave it blank
if you want to download from a public Gist)
Enter your Gist ID
(or a public Gist ID
).
Done!
In v1.48:
Preview features
Preview features are not ready for release but are functional enough to use. We welcome your early feedback while they are under development.
Settings Sync
Settings Sync is now available for preview in the stable release 🎉. Refer to the user guide for more information & FAQs.
Feature is now called Settings Sync also in the product. All of its references & settings are renamed to be aligned.
Also see "Manual merge" and syncing between Insiders and Stable at https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_48.md#settings-sync
In v1.45 it looks like you will be able to login to the built-in Settings Sync via github, see https://github.com/microsoft/vscode/issues/95160#event-3266867554 (Support GitHub logins in settings sync). And the v1.45 Release Notes.
In v1.43 as a preview feature (so in the Insiders' Build only) is settings sync. See https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_43.md#settings-sync
Settings Sync
We have been working the last couple of months to support synchronizing VS Code settings, extensions, and keyboard shortcuts across machines (popular feature request #2743). In this milestone, we are happy to announce that this feature is ready for preview from our next 1.44.0-insider release. You can now have your customizations synchronized in all your VS Code installs across all your machines. You can also bootstrap VS Code with your personal customizations on a fresh machine with minimal effort. Following video demonstrates this:
Supports detecting conflicts in settings and keybindings while synchronizing. Conflicts are shown using the diff editor with incoming (cloud) changes on the left side and local changes on the right side. You can resolve the conflicts by editing in the right side editor and merge the changes using the actions provided in the editor.
Supported Features
Currently Settings, Keyboard Shortcuts, Extensions, and the Display Language are synchronized but we are planning to add more. You can review our list of proposed Setting Sync features.
Machine settings (with machine or machine-overridable scopes) are not synchronized by default. You can also add or remove settings you want to this list from settings editor or using the setting
sync.ignoredSettings
.Keyboard Shortcuts are synchronized per platform by default. If your keyboard shortcuts are platform agnostic then, you can synchronize them across platforms by disabling the setting
sync.keybindingsPerPlatform
.All built-in and installed extensions are synchronized along with their global enablement state. You can skip synchronizing an extension, from extensions view or using the setting
sync.ignoredExtensions
.Settings Sync activity can be monitored in the Log (Sync) output view. All local customizations are backed up for last 30 days (atleast 10) in the disk whenever they are changed during synchronization. You can use the command Sync: Open Local Backups Folder to go the backups location and retain your old customizations.
(and a few gifs at the release note link)
Note that is working through your Microsoft account, not github (until v1.45 - see top):
Settings Sync uses a Microsoft account to store your VS Code customizations for synchronization and therefore you would need an account to use this. Refer to the Settings Sync documentation for more information and help.
Also see https://github.com/microsoft/vscode-docs/blob/vnext/docs/editor/settings-sync.md for more on how to set up settings sync
.
And a link to v1.44 info on Settings Sync: https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_44.md#settings-sync
I did this on my Mac by copying VS Code's settings.json
to my iCloud drive for automatic backup, and then creating a symbolic link.
settings.json
from VS code settings directory $HOME/Library/Application Support/Code/User/settings.json
to your backup locationsettings.json
by renaming to settings-old.json
cd
to VS code setting dir: cd ~/Library/Application\ Support/Code/User/
ln -sf path/to/backup/settings.json settings.json
. Since I backed mine up to iCloud and renamed the file to vscode.settings.json
, my command looked like this: ln -sf ~/Library/Mobile\ Documents/com~apple~CloudDocs/vscode.settings.json settings.json
To use the backup on a different Mac, just repeat steps 2-5.
I also did this for extensions...
cd ~/.vscode/
mkdir ~/Library/Mobile\ Documents/com~apple~CloudDocs/vscode/
cp -a extensions ~/Library/Mobile\ Documents/com~apple~CloudDocs/vscode
mv extensions extensions-old
ln -sf ~/Library/Mobile\ Documents/com~apple~CloudDocs/vscode/extensions extensions
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With