使用 VS Code 进行远程开发比 Visual Studio Code 1.34 版本更有趣
你好。
我是Mandai,负责Wild 开发团队。
通常,本文会从 Visual Studio Code(以下简称 VSCode)的最新发行说明中挑选有趣的功能和有趣的主题,但我对使用 VSCode 进行远程开发更感兴趣,所以这次我会仔细看看我愿意这样做。
我错误地说更新很小,但就是这样了。
远程开发终于宣布了。
我想看看里面,看看它是如何工作的。
看来开发环境变了。
在Beyond的开发现场,我们不使用容器,大部分开发都是在虚拟机上完成的,但世界各地的开发环境也在快速变化。
我不知道细节,但我认为我的环境是一个专注于当前可能的 VSCode 最大效率的环境。
如果有什么东西可以进一步加速的话,我们别无选择,只能使用它!
这次,我只能从标题中隐约了解到远程开发指的是什么样的连接目的地,所以我也想研究一下。
准备
在撰写本文时,有一个用于远程开发的扩展,但它似乎仅适用于 Insider 的构建,因此我将快速安装它。
Insiders Build 可以与现有环境分开准备,因此这里下载并安装它
安装完成后,安装扩展。
就我而言,我正在 Windows 环境中对其进行测试,因此请相应地阅读说明。
该扩展的名称是“Remote Development”,因此搜索它并安装它,如下图所示。
安装扩展程序后,您将在侧边栏中看到另一个图标。
从这里输入连接信息。
如下面的屏幕截图所示,SSH 设置通常位于易于选择的位置。
现在你已经拥有了你需要的一切。
尝试连接
这次,我们尝试连接到另一台服务器,因此从“设置”中输入 ssh_config 路径。
我以为可以从头输入SSH信息,但是好像需要ssh_config。
由于Windows环境下没有ssh_config,所以这方面有点麻烦。
这次,我们将连接到本地环境中的虚拟机,因此我们使用以下命令写出 ssh_config。
流浪者 ssh > ssh_config
让我们指定创建的文件。
然后,您之前添加的连接目的地就会显示在侧栏中。
看来本地分机和远程分机可以分开管理。
当我查看终端时,我看到一条消息:“我正在使用 SSH 隧道,所以请不要删除它。”
为了防止意外,我希望这件事在后台完成,但由于这是试用版,所以不用担心细节。
我大部分时间都在拍照,到目前为止一切都进展得很顺利!
没关系!
此时,Open Terminal会自动打开远程终端。
到目前为止,程序是使用 Ctrl + Shift + @ 打开本地终端并使用 vagrant ssh 等通过 SSH 连接,但现在打开起来稍微容易一些。
尝试打开项目
首先我检查了SSH是否可以,所以想打开开发环境,这也是最初的目的。
由于这个VM已经有了运行环境,所以我会省略设置执行环境和传输一组文件的步骤,但我认为git clone之类的文件不会有问题。
当您选择从文件中打开文件夹时,将输入 /home/vagrant。
换句话说,只要建立SSH连接,当涉及到文件夹时,似乎就会选择远程环境中的文件夹。
从那时起,我开始意识到它是多么神奇,我起了鸡皮疙瘩。
是不是太方便了!这种感觉逐渐出现在我身上。
输入项目根路径并按“确定”后,窗口将重新加载,并且实现的文件将像往常一样显示在资源管理器中。
我正在处理的 git 分支仍然显示,而且看起来和以前一样。
呃,我还能继续这样工作吗?真是太惊喜了。
在哪里安装扩展
既然分为本地和远程两个环境,那么我应该在哪里安装扩展呢?我思考了这个问题,但无法得出结论,所以我安装了PHP Intelephense,
然后,安装完成,没有任何对话框询问安装位置。
该扩展似乎是远程安装的,并且状态为“需要重新加载”。
似乎不支持远程端热重载。
我认为热重载现在是一个必不可少的功能,所以我认为将来会支持它。
当我打开代码时,intelephense索引工作运行顺利,因此它的工作没有任何问题。
我认为完全可以在本地工作的东西,例如颜色主题,现在每次都需要重新加载窗口,而且似乎还有改进的空间。
因此,结论似乎是您不必每次都担心扩展。
关于远端运行环境
最后总结一下远程端的运行环境。
首先,远程端必须是Linux。
它还仅限于 64 位操作系统。
虽然我没有尝试过,但是VSCode博客上有运行Ubuntu的镜像,所以看起来并没有受到发行版的限制。
我的虚拟机是CentOS7,所以我认为可以肯定地说这两个操作系统都很好。
接下来,您需要在远程端安装 bash、tar、(curl || wget)。
看来我不需要安装curl或wget。
这些都是常用的软件,所以即使你需要安装它们也不会有任何麻烦。
以上两个是 SSH 和容器都存在的限制。
特别是在容器中运行时,需要将必要软件的安装写入dockerfile中,因此请注意,如果使用现有的,则需要对其进行修改。
还有许多其他限制。
- 无法拖放到资源管理器区域
- 不支持 PuTTY
- 安装扩展需要reload(这个和前面介绍的一样)
- 如果您通过 SSH 操作 git,并且 SSH 隧道/git 之一使用非通行 SSH 密钥,则 git 操作将导致 HTTPS 通信。
在撰写本文时,已登记了 74 个问题,我认为修复起来很困难,但我希望看到它们得到解决。
概括
这次是介绍用VSCode进行远程开发的文章,是一篇VSCode发布总结文章。
- 连接很容易(只是创建 ssh 配置很麻烦)
- 移动速度比我预想的要快
- 看起来它也可以用于本地虚拟机开发。
- 暂时移动一下。如果继续使用的话可能会出现很多问题。
似乎您无法手动断开远程连接,所以我很高兴看到有一个测试版功能,您可以在断开连接时关闭窗口。
现在可能是一个困难时期,有很多问题,但我个人强烈认为这将成为标准,所以我推荐它。
即使您抱怨,为什么不尝试使用它呢?
就是这样。