我们希望为所有开发人员提供相同的 VSCode 设置。 另外,最好有一个 oneline 命令来拆除 VSCode 并从头开始重新启动,并使用预定义的设置和插件,这样您就不需要担心尝试插件并进入已知状态。 VSCode 的一种配置即代码。
我已经找到了:
但是这些都没有给我提供好的解决方案
我们使用 Mac 和 Windows 机器,大部分时间在本地开发(而不是在云端等远程)。
我想像这样的脚本
....项目名称向上
或
....项目名称重置
(或
....项目名称向下)
接收/重置已配置的设置和为项目配置的最新插件。
有任何想法或已经使用类似的解决方案吗?
将文件
settings.json
和 keybindings.json
复制到目标计算机以复制设置。您可以在这里找到这些文件:
~\AppData\Roaming\Code\User
~/Library/Application Support/Code/User/
~/.config/Code/User
您可以分别从 linux/mac 或 windows 的
~/.vscode/extensions
或 C:\Users\username\.vscode\extensions
复制扩展。
经过大量研究,使用 Docker、Ansible 等...似乎虽然我一开始排除了它,但来自 Shan Khan 的插件 Settings Sync Plugin 才是正确的选择。它的安装量约为 100 万!
仅依赖项 - 您需要一个 GitHub 帐户来托管您的配置。这就是一开始阻碍我的原因 - 但为团队中的每个人都提供一个并将其连接到公司 github 帐户应该不是什么大问题。
FalcoGer 的答案应该解释如何以 VS Code 拾取文件的方式复制文件。如果您只需要复制一次配置文件,这个解决方案就可以了。
如果您需要定期“同步”这些配置文件,我建议创建一个 Git 存储库来存储所有配置文件。
将存储库克隆到本地计算机时,您可以将文件符号链接到配置目标(请参阅 FalcoGer 的 anwser)。然后,当您需要“同步”时,您只需运行
git pull
并重新启动 VS Code 即可应用更改。
对于其他与脚本相关的问题,您可以为此创建一个 CLI。 Python 将是最友好的方式来做到这一点。您可以在此处找到示例。
我们根据在互联网上找到的内容编译的最简单的解决方案如下:
在每台电脑上,在文件中
.vscode-server/server-env-setup
:
# Cf. https://code.visualstudio.com/docs/remote/wsl#_advanced-environment-setup-script, this runs command(s)
# when the code server starts (in WSL). We say practically always: please install these extensions ...
# * if the extensions don't exist, they are of course installed (the mode 'installed in wsl', not the mode 'installed in win')
# * if they exist, nothing will be done; and this is fast; i.e. the startup time of vscode is not being penalized
#
# Others on Internet had more complex scripts; but their complexity doesn't seem to be needed.
/mnt/c/Program\ Files/Microsoft\ VS\ Code/bin/code --install-extension eamodio.gitlens
...
如何在每台电脑上传播此文件?这取决于您在组织中使用的工具。我们使用Salt Stack。