本文是在VS Code中使用 remote ssh 进行开发的笔记。
安装插件
打开VS Code,在扩展区找到remote相关插件,安装之。下图中红色框出来的是已经安装了的插件(圆圈处即为Remote Explorer)。
实践
连接服务器
新建连接:
输入ssh登陆信息,回车,会提示有保存的配置文件。 (注:笔者已在windows系统设置ssh免密码登陆远程服务器)
配置文件(注:Host
可改为易于理解记忆的文字。):
在当前窗口打开(注:此处SSH连接名称已变化了):
选择操作系统为Linux:
开始在远程服务器安装VS Code Server
。
如果网络不畅通或出错,此步骤会失败。参考后文使用离线方法安装。
如果安装成功,并能正常运行,则有如下提示,点击“Allow”。
打开远程服务器工程目录
点击“Open Folder”打开远程服务器目录。
可用鼠标导航到所需目录,以下是选择最终目录的截图。
点击“OK”完成。即可看到远程服务器c_test目录内容。
开发示例
使用Ctrl+~
打开远程服务器的终端,默认已在目标目录,可进行编译、运行操作。
以下是一次编译和运行的示例:
其它操作
关闭远程连接:
小结
下面是笔者的使用心得:
- 使用
remote-ssh
开发,与本地开发没有什么差异。 - 连接过一次后,VS Code会记录工程信息,方便下次访问开发。
- 本文是用笔者虚拟机作示例的。之前是通过虚拟机挂载目录方式,在本地VS Code打开本地工程,再在虚拟机内编译运行。使用此方法,可以直接将工程放到虚拟机内。
- 值得说明的是,笔者并没有将工程放到虚拟机内部的习惯,一来,虚拟机体积日益增加(一个centos占了近100GB,一个xp占了近80GB),笔者硬盘已告急。二来,查看代码修改记录也不方便。
- 但是,本文所涉及的方法,不失为一种跨平台开发的好方法。笔者就使用这种方法,远程解决一个arm平台的bug。首先,通过远程工具连接到服务器,在上面下载工程代码,再在VS Code用
remote-ssh
打开工程,添加调试信息,再在VS Code终端执行docker编译容器进行编译,再用scp
拷贝到内网的arm平台机器上运行。描述虽多,但基本上在一个工具内可完成上述操作,十分方便。
附
离线安装 VS Code Server
VS Code需要在远程服务器安装VS Code Server
方可实现远程开发。
先在 VS Code的Help-> About中查看commit号,按如下格式组装地址(笔者远程服务器是X86,本地commit号是fabdb6a30b49f79a7aba0f2ad9df9b399473380f
):
https://vscode.download.prss.microsoft.com/dbazure/download/stable/fabdb6a30b49f79a7aba0f2ad9df9b399473380f/vscode-server-linux-x64.tar.gz
https://vscode.download.prss.microsoft.com/dbazure/download/stable/fabdb6a30b49f79a7aba0f2ad9df9b399473380f/vscode_cli_alpine_x64_cli.tar.gz
下载得到如下2个文件:
vscode-server-linux-x64.tar.gz
scode_cli_alpine_x64_cli.tar.gz
再在远程服务器创建目录.vscode-server
,拷贝下载的文件到该目录。
$ mkdir ~/.vscode-server/
$ cd ~/.vscode-server/
$ ls
vscode_cli_alpine_x64_cli.tar.gz vscode-server-linux-x64.tar.gz
VS Code Server
有一定的目录格式要求,执行命令如下:
$ mkdir -p cli/servers/Stable-fabdb6a30b49f79a7aba0f2ad9df9b399473380f/
$ mv vscode-server-linux-x64 server
$ mv server/ cli/servers/Stable-fabdb6a30b49f79a7aba0f2ad9df9b399473380f/
$ tar xf vscode_cli_alpine_x64_cli.tar.gz
$ mv code code-fabdb6a30b49f79a7aba0f2ad9df9b399473380f
说明:对于vscode-server-linux-x64.tar.gz
,解压得到的是目录,改名为server
,拷贝到.vscode-server/cli/servers/Stable-${commit_id}/
目录下。对于vscode_cli_alpine_x64_cli.tar.gz,解压得到的是文件,将其命名为code-${commit_id}
。
参考资源
https://www.cnblogs.com/qiuhlee/p/17729647.html