如何导出VS Code扩展名列表

时间:2016-03-03 13:19:00

标签: visual-studio-code

我需要将所有已安装的扩展程序发送给我的同事,如何导出它们?

扩展程序管理器似乎什么都不做......它不会安装任何扩展程序。

22 个答案:

答案 0 :(得分:318)

手动 - 按脚本

  1. 在机器A中,

    UNIX:

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

    Windows(PowerShell,例如使用VSCode的集成终端):

    code --list-extensions | % { "code --install-extension $_" }
    
  2. 将echo输出复制并粘贴到机器B

  3. 示例输出

    code --install-extension Angular.ng-template
    code --install-extension DSKWRK.vscode-generate-getter-setter
    code --install-extension EditorConfig.EditorConfig
    code --install-extension HookyQR.beautify
    

    请确保您已安装代码命令行。有关详情,请访问https://code.visualstudio.com/docs/editor/command-line

    自动 - 使用扩展程序

    如果您正在寻找可以导出列表的扩展程序,请更新并与同事共享。

    这是一个名为Settings Sync的扩展程序,只需命令执行所有这些操作。

答案 1 :(得分:166)

我需要自己做几次 - 尤其是在另一台机器上安装时。

https://code.visualstudio.com/docs/editor/extension-gallery#_common-questions会为您提供文件夹的位置

  

VS Code在您的扩展文件夹.vscode / extensions下查找扩展名。具体取决于您的平台:

public class BASE
{
    public BASE() {};
    public abstract BASE clone();
}

public class CHILD : BASE
{

    public CHILD() : base() {}
    public new CHILD clone()
    {
        return new CHILD();
    }
}

这应该会显示扩展名列表

我也成功使用Visual Studio Code Settings Sync Extension将设置同步到GitHub gist

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

Windows %USERPROFILE%\.vscode\extensions
Mac ~/.vscode/extensions
Linux ~/.vscode/extensions

答案 2 :(得分:42)

我开发了一个扩展程序,可以跨多个实例同步所有Visual Studio代码设置。

主要功能

  1. 使用您的github帐户令牌。
  2. 只需点击一下即可轻松上传和下载。
  3. 保存所有设置和代码段文件。
  4. 上传密钥:Shift + Alt + u
  5. 下载密钥:Shift + Alt + d
  6. 键入同步以便查看所有同步选项
  7. 同步

    1. 设置文件
    2. 密钥绑定文件
    3. 启动文件
    4. Snippets文件夹
    5. VSCode 扩展程序
    6. 详细文档来源

      VSCode Sync ReadMe

      在此处下载:VS Code Settings Sync

答案 3 :(得分:17)

我使用以下命令将我的扩展从vscode复制到vscode内部人员:

code --list-extensions | xargs -L 1 code-insiders --install-extension

参数-L 1允许我们为code-insiders --install-extension生成的每个输入行执行一次code --list-extensions命令

答案 4 :(得分:14)

Windows(Powershell)版本的@Benny的回答

机器A:

在VSCode Powershell终端中:

code --list-extensions > extensions.list

机器B:

  1. 将extension.list复制到机器B

  2. 在VSCode Powershell终端中:

  3. cat extensions.list |% { code --install-extension $_}

答案 5 :(得分:10)

为安装扩展生成Windows命令。

for /F "tokens=*" %i in ('code --list-extensions')
   do @echo call code --install-extension %i >> install.cmd

答案 6 :(得分:7)

打开VScode控制台并编写:

code --list-extensions(如果安装了vscode内幕,则为code-insiders --list-extensions

然后与同事分享指挥线:

code --install-extension {ext1} --install-extension {ext2} --install-extension {extN}{ext1}{ext2},...,{extN}替换为列出的扩展名

对于vscode内幕:code-insiders --install-extension {ext1} ...

如果他们将其复制/粘贴到vscode commande line terminal,他们将安装共享扩展

有关command-line-extension-management

的更多信息

答案 7 :(得分:3)

有一个Extension Manager扩展名,可能有所帮助。它似乎允许安装settings.json中指定的一组扩展名。

答案 8 :(得分:3)

对于Linux

在OLD_MACHINE

code --list-extensions > vscode-extensions.list

在NEW_MACHINE

cat vscode-extensions.list | xargs -L 1 code --install-extension

答案 9 :(得分:2)

带有Linux子系统的Windows上的

Benny's answer

C:\> code --list-extensions | wsl xargs -L 1 echo code --install-extension

答案 10 :(得分:1)

我打开了VSCode扩展文件夹并执行了

find * -maxdepth 2 -name "package.json" | xargs grep "name"

这会为您提供一个列表,您可以从中提取扩展名。

答案 11 :(得分:1)

  

https://code.visualstudio.com/docs/editor/extension-gallery#_workspace-recommended-extensions

共享扩展列表的更好方法是为同事创建基于工作区的扩展集

在通过code --list-extensions | xargs -L 1 echo code --install-extension生成扩展列表之后(在运行代码命令之前检查$PATH中是否包含vscode条目c:\Program Files\Microsoft VS Code\bin\

运行Extensions: Configure Recommended Extensions (Workspace Folder) VsCode命令(Ctrl + Shift + P)并将扩展名放入生成的.vscode/extensions.json中:

{
    "recommendations": [
        "eg2.tslint",
        "dbaeumer.vscode-eslint",
        "msjsdiag.debugger-for-chrome"
    ]
}

答案 12 :(得分:1)

如果您想将所有扩展名从code转移到code-insiders,反之亦然,那么这就是Git Bash对我有用的。

code --list-extensions | xargs -L 1 code-insiders --install-extension

这将安装所有缺少的扩展,并跳过已安装的扩展。之后,您需要关闭并重新打开Visual Studio Code。

类似地,您可以通过以下方式将扩展名从code-insiders转移到code

code-insiders --list-extensions | xargs -L 1 code --install-extension

答案 13 :(得分:1)

转储扩展名:

code --list-extensions > extensions.txt

使用bash安装扩展程序(Linux,OSX和WSL):

cat extensions.txt | xargs code --list-extensions {}

使用PowerShell在Windows上安装扩展程序:

cat extensions.txt |% { code --install-extension $_}

答案 14 :(得分:1)

如何从终端导出Visual Studio Code扩展。这是git。也许这对某人有帮助。

如何从终端导出Visual Studio Code扩展

注意:Unix-like systems

  1. 将扩展名导出到shell文件:
QTimer
  1. 验证扩展程序安装程序文件:
code --list-extensions | sed -e 's/^/code --install-extension /' > my_vscode_extensions.sh

安装扩展程序(可选)

使用Bash命令运行less my_vscode_extesions.sh

my_vscode_extensions.sh

答案 15 :(得分:0)

现在有一项功能仍处于预览阶段,允许您使用 Microsoft 或 GitHub 帐户登录并同步您的设置,而无需任何其他扩展。这非常简单直接。您可以了解更多here

The things you can sync.

答案 16 :(得分:0)

导出扩展程序 (Bash):

code --list-extensions |
xargs -L 1 echo code --install-extension |
sed 's/$/ --force/' |
sed '$!s/$/ \&\&/' > install-extensions.sh

使用 bash 别名:

alias eve="code --list-extensions |
xargs -L 1 echo code --install-extension |
sed 's/$/ --force/' |
sed '\$!s/$/ \&\&/' > install-extensions.sh"

就跑

eve

安装扩展程序 (Bash):

sh install-extensions.sh

答案 17 :(得分:0)

通常在Windows下,我需要运行

cd C:\Program Files\Microsoft VS Code\bin
code.cmd --list-extensions

您不需要执行的操作是直接在C:\ Program Files \ Microsoft VS Code \

下运行code.exe

答案 18 :(得分:0)

  1. code --list-extensions > list

  2. sed -i 's/.*/\"&\",/' list

  3. 复制文件list的内容,并将其添加到.vscode/extensions.json部分的"recommendations"中。

  4. 如果extensions.json不存在,则创建具有以下内容的文件

{
    "recommendations": [
        //add content of file list here
    ]
}
  1. 共享extensions.json文件,并要求另一个用户将其添加到.vscode文件夹中。 vscode将提示安装扩展。

答案 19 :(得分:0)

对于那些想知道如何将扩展从vs代码复制到vs代码内部人员的人,请使用对Benny答案的以下修改:

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

答案 20 :(得分:0)

如果您打算在团队中共享工作区扩展配置,则应研究VSCode的Recommended Extensions功能。

要生成此文件,请打开命令托盘> Configure Recommended Extensions (Workspace Folder)。从那里开始,如果您想获取所有当前扩展名并将其放在此处,则可以使用其他答案中提到的--list-extensions东西,但是添加一些awk使其可粘贴到json数组中(您可以请您对此进行或多或少的改进,这只是一个简单的示例):

code --list-extensions | awk '{ print "\""$0"\"\,"}'

此方法的优点是可以将您整个团队范围的工作区配置检入源代码管理。在项目中存在此文件的情况下,当打开项目时,VSCode会通知用户建议安装的扩展名(如果尚未安装),并且只需按一下按钮即可全部安装。

答案 21 :(得分:-2)

仅适用于Linux / Mac,以安装脚本的形式导出已安装的Visual Studio代码扩展。它是Zsh脚本,但也可以在bash中运行。

https://gist.github.com/jvlad/6c92178bbfd1906b7d83c69780ee4630