Remote-SSH使用教程 VSCode

2020-12-02 14:45:35

公司电脑是win的,实在又一个项目不能用win来编译。这事可难坏了,型号,发现了vscode自带的远程编程,瞬间轻松了。

以后也能解决不少问题,至少不好搭环境,或者需要一次性环境的时候,可以使用这个方法,不错呢。

可惜webstorm,IntelliJ IDEA上面没有这个功能,很可能因此要换开发工具了。

下面来介绍下配置教程


官方文档连接 Remote development over SSH   

https://code.visualstudio.com/docs/remote/troubleshooting#_installing-a-supported-ssh-client


又不懂或者模糊的地方还可以参考下其他连接  


VSCode:Remote-SSH配置实录


VSCode:Remote-SSH使用说明


为什么要使用VSCode:Remote-SSH

服务器很多时候都是部署在Linux远程机器上的,我们通常是SSH连过去然后用vim或者emacs去修改源文件。
这种方式对我来说很麻烦,因为我已经习惯了全宇宙最好用的C++IDE Visual Studio,离开IDE写代码实在太痛苦了。
所以我只能借助samba+sourceinsight的组合来勉强度日。这个组合其实是比较好的,只不过配置特别麻烦,实在是不想折腾。

这时,微软开发了一个VSCode的插件Remote-SSH,可以说是目前比较完美的解决了在windows下开发linux程序的问题。
Remote-SSH配置简单,界面可视化,你可以把他看做是带IDE的Putty。当然你也可以只把他当做一个远程ssh的连接工具来代替putty,xshell。

配置

1.安装

目前Remote-SSH这个插件仅支持VSCode的Insider版本(2019.5.8),所以你需要下载VSCode的Insider版本然后直接在扩展搜索Remote-SSH即可。


选择Remote-SSH下载即可。

安装完毕后侧边栏会出现新的图标:

(注意这里安装完后你们不会有AliServer这个Item,这是我配置完毕后的一个截图)

2.配置

Remote-SSH非常简单。
首先使用快捷键Ctrl+P打开活动栏:

搜索Remote-SSH,点选Connect to Host选项
接着会弹出:

让你选择config文件放在哪里,回车即可新建并编辑config文件。
config文件必须放到被授权的rsa秘钥所在的文件目录,可以看到我这个目录下的文件是这样的:

config文件是Remote-SSH的配置文件,表示我们将使用这个文件夹下的rsa秘钥文件去登录远程服务器。

注意:
Remote-SSH只提供使用RSA秘钥远程登录,所以你必须将该本机的rsa公钥添加到远程服务器,这一步并不麻烦,可以看我的这篇博文https://blog.csdn.net/sixdaycoder/article/details/89850064有详细教程。12

config文件配置项如下:

Host AliServer
	HostName 1.1.1.1 # 填写远程服务器的IP或者Host
	User     username # 填写登陆远程服务器的用户的名字123

你没看错,只有三行,非常简单。

3.连接

配置完毕后,在Remote-SSH中会出现新的名为AliServer的条目。

点击右边的按钮即可连接在新窗口中打开远程连接。
如果配置正确,会打开一个新的窗口,显示如下:

成功连接后Opening Remote状态会更改:

4.使用

在新窗口可以在菜单栏使用File->Open Folder,然后就会弹出以下窗口:

输入目录即可打开到侧边栏,然后就可以像是在本地开发一样更改远程的源文件,编译,调试。
或者呼出终端,当做一个带UI的Shell使用也可。


  • 2019-10-08 14:09:57

    git创建分支并提交到远程分支

    远程分支的创建,一般都是基于本地分支的。即将本地的某个分支提交到远程,作为远程分支。命令如下:

  • 2019-10-09 13:38:20

    NPM依赖包版本号~和^和*的区别

    ~ 会匹配最近的小版本依赖包,比如~1.2.3会匹配所有1.2.x版本,但是不包括1.3.0 ^ 会匹配最新的大版本依赖包,比如^1.2.3会匹配所有1.x.x的包,包括1.3.0,但是不包括2.0.0 * 这意味着安装最新版本的依赖包

  • 2019-10-09 14:39:40

    import双反斜杠\\的意思

    ​ \表示引用根目录下面的PHPEXcel;不用\的话是引用当前目录下面的 PHPExcel

  • 2019-10-09 15:33:31

    nuxt,nuxtjs简单介绍以及使用

    在集成的服务器端框架之间进行选择: 选择您喜欢的 UI 框架: 选择您喜欢的测试框架: 选择你想要的 Nuxt 模式 (Universal or SPA) 添加 axios module 以轻松地将 HTTP 请求发送到您的应用程序中。 添加 EsLint 以在保存时代码规范和错误检查您的代码。 添加 Prettier 以在保存时格式化/美化您的代码。

  • 2019-10-10 00:21:35

    laravel 5.6以上日志理解及日志格式定义

    Laravel/Lumen的日志默认是基于Monolog进行了一层封装,如果要求不高,用起来还是十分容易的,本文基于laravel5.6/Lumen5.6版本进行解说。5.6版对日志系统做了升级,将日志的配置单独放以了config/logging.php 配置文件中,所以现在实用多了。

  • 2019-10-10 10:10:49

    @Scheduled注解各参数详解

    每隔5秒执行一次:*/5 * * * * ? 每隔1分钟执行一次:0 */1 * * * ? 每天23点执行一次:0 0 23 * * ? 每天凌晨1点执行一次:0 0 1 * * ? 每月1号凌晨1点执行一次:0 0 1 1 * ? 每月最后一天23点执行一次:0 0 23 L * ? 每周星期天凌晨1点实行一次:0 0 1 ? * L 在26分、29分、33分执行一次:0 26,29,33 * * * ? 每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?

  • 2019-10-10 11:07:47

    Java8 - Map更优雅的迭代方式:forEach

    用于两个参数之间进行操作的函数式接口是 BiConsumer。这个函数式接口正好用来操作 Map 的 key 和 value。JDK8强化了针对 Map 类的迭代方式,新增了一个默认方法 forEach,它接收一个 BiConsumer 函数。JDK给出的描述如下: