如何导出Visual Studio Code的设置?

时间:2016-02-12 17:37:30

标签: visual-studio-code

如何导出所有Visual Studio代码设置和插件并将它们导入另一台机器?

13 个答案:

答案 0 :(得分:103)

Visual Studio Code有一个扩展名,名为 Visual Studio代码设置同步 https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync

它通过gist同步你的设置(GitHub的Gist)。它与名为settings-sync的Atom.io扩展名相同。

答案 1 :(得分:94)

使用当前版本的VSCode(1.22.1),您可以在

中找到您的设置
    Linux上的
  • ~/.config/Code/User(在我的例子中,是一个Ubuntu派生词)
  • Windows 10上的
  • C:\Users\username\AppData\Roaming\Code\User
  • Mac OS X上的
  • ~/Library/Application Support/Code/User/ (谢谢,Christophe De Troyer

文件为settings.jsonkeybindings.json。只需将它们复制到目标机器即可。

您的扩展程序位于

    Linux和Mac OS X上的
  • ~/.vscode/extensions
  • Windows 10上的
  • C:\Users\username\.vscode\extensions(例如,基本上是同一个地方)

或者,只需转到扩展程序,显示已安装的扩展程序,然后在目标安装上安装这些扩展程序。对我来说,复制扩展程序工作得很好,但它可能是扩展程序特定的,特别是如果在平台之间移动,取决于扩展程序的作用。

答案 2 :(得分:35)

为后人this post提及,

  

在最新版本的VSCode(2016年5月)中,现在可以列出   命令行中已安装的扩展名

code --list-extensions

在Mac上,执行以下操作:

"/Applications/Visual Studio Code.app//Contents/Resources/app/bin/code" --list-extensions  

安装使用:

--install-extension <ext> //see 'code --help'

答案 3 :(得分:20)

类似于Big Rich给出的答案,您可以执行以下操作:

$ code --list-extensions | xargs -L 1 echo code --install-extension

这将列出扩展名以及安装命令,因此您只需将整个输出复制并粘贴到另一台计算机中即可:

示例:

code --install-extension EditorConfig.EditorConfig
code --install-extension aaron-bond.better-comments
code --install-extension christian-kohler.npm-intellisense
code --install-extension christian-kohler.path-intellisense
code --install-extension CoenraadS.bracket-pair-colorizer

摘自here给出的答案

注意:确保事先已将VS代码添加到路径中。在Mac上,您可以执行以下操作:

  1. 启动VS代码
  2. 打开命令面板(⇧⌘P)并键入“ shell命令”以查找 Shell命令:在PATH命令中安装“代码”命令。

答案 4 :(得分:8)

您现在可以使用VSCode的内置Settings Sync在设备之间同步所有设置。在Code > Preferences > Turn on Settings Sync...

下找到

在官方文档here

中了解有关此内容的更多信息

答案 5 :(得分:3)

您的用户设置位于~/Library/Application\ Support/Code/User

如果您不关心同步并且这是一次性的事情,您只需将文件keybindings.jsonsettings.json复制到新计算机上的相应文件夹即可。

您的扩展程序位于~/.vscode文件夹中。大多数扩展都没有使用任何本机绑定,并且它们应该在复制时正常工作。 您可以手动重新安装那些不这样做的人。

答案 6 :(得分:3)

我更喜欢用自己的方式在笔记本电脑之间同步所有VSCode扩展,使用.dotfiles和小脚本自动执行更新。每当我想安装所有扩展名时(通过brew),在VSCode中没有任何鼠标活动的情况下,这种方法都会对我有帮助。

因此,我只需将每个新添加的扩展名写入存储在.dotfiles文件夹中的 .txt 文件中。之后,我在另一台笔记本电脑上拉 master 分支以获取具有所有扩展名的最新文件。

使用Big Rich之前编写的脚本,并进行了另一处更改,我几乎可以完全自动同步所有扩展。

脚本

cat dart-extensions.txt | xargs -L 1 code --install-extension

还有另一种方法可以自动执行该过程。您可以在此处添加实时查看VSCode扩展的脚本,并且每次在code --list-extensions命令和.dotfiles中的 .txt 文件之间进行比较时,都可以轻松更新您的文件并将其推送到您的远程仓库

答案 7 :(得分:1)

我已经制作了一个Python脚本,用于将vsc设置导出到单个zip文件中。 https://gist.github.com/wonderbeyond/661c686b64cb0cabb77a43b49b16b26e

您可以将zip文件上传到外部存储设备。

$ vsc-settings.py export
Exporting vsc settings:
created a temporary dump dir /tmp/tmpf88wo142
generating extensions list
copying /home/wonder/.config/Code/User/settings.json
copying /home/wonder/.config/Code/User/keybindings.json
copying /home/wonder/.config/Code/User/projects.json
copying /home/wonder/.config/Code/User/snippets
  adding: snippets/ (stored 0%)
  adding: snippets/go.json (deflated 56%)
  adding: projects.json (deflated 67%)
  adding: extensions.txt (deflated 40%)
  adding: keybindings.json (deflated 81%)
  adding: settings.json (deflated 59%)
VSC settings exported into /home/wonder/vsc-settings-2019-02-25-171337.zip

$ unzip -l /home/wonder/vsc-settings-2019-02-25-171337.zip
Archive:  /home/wonder/vsc-settings-2019-02-25-171337.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2019-02-25 17:13   snippets/
      942  2019-02-25 17:13   snippets/go.json
      519  2019-02-25 17:13   projects.json
      471  2019-02-25 17:13   extensions.txt
     2429  2019-02-25 17:13   keybindings.json
     2224  2019-02-25 17:13   settings.json
---------                     -------
     6585                     6 files

PS:您可以为我实现vsc-settings.py import子命令。

答案 8 :(得分:1)

启用便携式模式:https://code.visualstudio.com/docs/editor/portable

摘要: 可移植模式指示VSC将其所有配置和插件存储在特定目录中(在Windows和Linux中称为data /,在MacOS中称为code-portable-data)。 您随时可以复制数据目录,然后将其复制到另一个安装中。

答案 9 :(得分:0)

感谢@michalczukm

我已经在VSCode上设置了“ Settings Sync”插件,以便将某些设置同步到Gist。

如果您想使用“设置同步”,则可以看到这篇不错的帖子。

  

Backup and Synchronize VSCode Settings with a GitHub Gist | Mike F Robbins

答案 10 :(得分:0)

当前存在一个开放功能请求问题,该问题似乎在设计建议阶段。我将等待这种官方支持。您可以订阅该问题并获取有关进度的通知。

https://github.com/microsoft/vscode/issues/2743#issuecomment-560116420

答案 11 :(得分:0)

vsCode中通常会有关于Java设置的问题。这是一个大问题,可能需要高级用户知识来体现。但是有一种简单的方法可以从vsCode获取现有的Java设置,然后将这些设置复制到另一台PC上使用。这篇文章使用的是2020年12月中旬的vsCode和JDK的最新版本。

此帖子随附几幅屏幕截图(下面),它们应为视觉学习者提供足够的信息。

首先,请打开vsCode,然后打开现有的Java文件夹文件或在vsCode中创建一个新的Java文件。然后查看vsCode的右下角(在蓝色命令栏上)。 vsCode应该显示一个图标,显示正在使用的Java Standard Edition(Java SE)的版本。今天,此PC上的版本是JavaSE-15。 (link 1)

单击该图标(JAVASE-15),然后打开一个名为“ java.configuration.runtimes”的新窗口。此名称下应有两个选项卡:UserWorkspace。这些选项卡下面是一个名为“ Edit in settings.json”的链接。单击该链接。 (link 2)

然后应打开两个json文件:Default settingssettings.json。这篇文章只关注“ settings.json”文件。 settings.json文件显示了用于编码不同编程语言(Python,R和Java)的各种设置。 settings.json文件底部附近显示了该用户在vsCode中用于Java编程的设置。

这些Java设置是可以“备份”的设置-意味着将这些设置复制并粘贴到另一台PC上,以创建类似于该PC上Java编程环境的Java编程环境。 (link 3)

link 1

link 2

link 3

答案 12 :(得分:0)

我这样做了(Linux)

$ code --list-extensions | xargs -L 1 echo code --install-extension > codeExtensions.sh

然后我在目标机器上运行脚本。