如何使用 Visual Studio Code 在远程 SSH 服务器上进行开发

显示 Visual Studio Code 图标的图形

编辑存储在远程服务器上的文件不需要是一堆笨重的 shell 命令和基本的文本编辑器。 Visual Studio Code 是最受欢迎的开发人员 IDE 之一,官方支持的扩展允许你将 SSH 连接添加到工作区。

Remote – SSH 扩展可以连接到网络服务器,列出它们的目录结构,以及打开和编辑文件。 几乎所有 Visual Studio Code 功能都可用,包括 IntelliSense 代码完成、内置调试和第三方扩展。

入门

首先将 Remote – SSH 扩展添加到你的编辑器。 按 Ctrl+Shift+P 打开命令面板并键入“安装”。 扩展侧边栏将出现在左侧。 搜索“remote – ssh”并安装匹配的扩展。 它由 Microsoft 发布和支持。

现在你需要连接到你的 SSH 服务器。 该扩展适用于运行 Ubuntu、Debian、CentOS、RHEL 和 Raspbian 的主机。 如果使用 Microsoft 的官方 OpenSSH 服务器,也支持 Windows 服务器。 macOS 主机需要启用操作系统的远程登录功能。

在继续之前,请确保你已将本地 SSH 公钥复制到服务器的 authorized_keys 文件中。 VS Code 不完全支持基于加密的身份验证; 尽管它会起作用,但每次运行命令时你都需要重新输入加密货币。

广告

按 Ctrl+Shift+P 以显示命令面板。 搜索“远程浏览器”并运行“查看:显示远程浏览器”命令以显示远程侧面板。 如果尚未选择,请从顶部的下拉列表中选择“SSH 目标”。

将鼠标悬停在侧面板中的“SSH 目标”标题上。 单击加号按钮以创建新连接。 将出现一个弹出窗口,让你输入服务器的详细信息。 这应该是一个完整的 SSH 连接命令,带有 -A 标志以启用代理转发。 这使你可以在服务器上运行后续 SSH 命令时使用本地密钥。

ssh 用户@example.com -A

系统将提示你选择要写入的 SSH 配置文件。 你可以从默认用户文件、系统设置文件或自定义位置中进行选择。 如果你不确定,在你的主目录中选择默认值通常是最好的选择。

你的新主机将添加到远程浏览器侧栏中。 单击名称旁边的文件夹图标以在新的 Visual Studio Code 窗口中打开连接。 在 Visual Studio 配置远程主机并启用其服务器组件时,首次运行设置可能需要一些时间。

使用远程连接

设置完成后,你会发现自己在一个常规的 Visual Studio Code 窗口中,该窗口针对你选择的主机运行操作。 单击侧边栏左上角的“打开文件夹”按钮以在你的服务器上查找目录。 系统可能会提示你确认 Workspace Trust 提示; 如果是这样,请单击“是”将目录标记为受信任并启用所有编辑器功能。

现在,你将看到服务器端目录显示在 VS Code 的常规浏览器窗格中。 你可以使用熟悉的工作流程打开文件、查看其内容和编辑它们。 如果你在 Git 存储库中工作,则可以像往常一样使用内置的源代码控制功能来暂存和提交更改。

广告

包含 .vscode 文件的目录支持构建和调试等功能。 VS Code 可以执行远程目录的内容,给你完整的开发体验。 如果定义了构建系统,请按 F5 启动你的应用程序。 你可以设置断点并以与本地项目相同的方式单步执行代码。

窗口底部的 VS Code 终端面板也将连接到选定的主机。 你可以使用它在远程服务器上执行命令。

一旦你打开了一个目录,以后它就会显示在远程浏览器的侧边栏中。 单击 SSH 主机下方的名称以直接启动一个新的 VS Code 窗口到该远程目录。

它是如何工作的?

远程功能通过在远程机器上安装 VS Code 服务器组件来工作。 这在你第一次连接时自动发生。 服务器监视文件系统、应用更改并启动编辑器请求的进程。

服务器是必需的,因此 VS Code 具有完整的文件系统访问权限以及在主机上执行代码和运行调试的能力。 你通常不需要与服务器进程交互,因为它完全由你的编辑器客户端管理。 如果需要,你可以从命令面板重新启动它。

.vscode 文件中的扩展也将安装在远程主机上。 这使他们可以毫无妥协地访问你的文件,因此大多数扩展都可以正常工作。

广告

当你在 VS Code 中进行编辑时,你可以获得接近本机的性能,而且开销很少。 读取和写入文件的请求从 VS Code 编辑器窗口中继到远程主机上的服务器进程。 这与文件系统交互以提供请求的数据并制定任何必要的更改。

与其他远程编辑扩展不同,这个扩展专注于提供完整的远程开发体验,而不仅仅是简单的文件编辑。 包含服务器组件对于这种方法至关重要,因为核心编辑器功能与代码保持紧密联系。 它们与你看到并与之交互的编辑窗口分离。

配置扩展

该扩展程序有几个设置,你可以通过“远程 SSH:设置”命令访问。 在页面顶部,你可以指定自定义 SSH 配置文件的路径并添加默认连接超时。 当远程主机无响应时,这会阻止 Visual Studio 挂起太长时间。 在页面下方,“Max Reconnection Attempts”设置允许你在连接失败时更改 Visual Studio 的行为。

“默认扩展”设置允许你添加将安装在所有远程 SSH 主机上的 VS Code 扩展。 这些扩展将普遍可用,即使你尚未将它们添加到活动项目的 .vscode 文件中。

以下复选框控制自动代理转发。 这些对应于 SSH 配置文件中的默认 SSH 客户端设置。

进一步的设置让你可以自定义 VS Code 公开和连接到远程服务器的方式。 你可以选择使用套接字而不是端口、跨打开的窗口汇集连接,并使用自定义 SSH 二进制路径。 这些设置是特定于环境的; 每个都附有其预期用途的描述。

概括

VS Code 的远程 SSH 扩展简化了远程主机上文件的处理。 你无需在机器之间手动同步文件,即可获得一流的开发体验。

广告

该工作流增强了远程开发环境的实用性。 你可以在单个服务器上配置你的工具链,并让开发人员远程访问它。 VS Code 比在本地挂载远程文件系统或使用远程访问软件(如 VNC)等传统方法更可靠、更高效、更强大。

除了 SSH 连接,VS Code 还了解 Docker 容器、Linux 的 Windows 子系统和 GitHub 代码空间。 无论你的代码位于何处,你都可以获得 VS Code 编辑器的所有功能,从而在设置新环境时为你提供更大的灵活性。

资讯来源:由0x资讯编译自HOWTOGEEK。版权归作者James Walker所有,未经许可,不得转载
提示:投资有风险,入市需谨慎,本资讯不作为投资理财建议。请理性投资,切实提高风险防范意识;如有发现的违法犯罪线索,可积极向有关部门举报反映。
你可能还喜欢