使用VSCode和SSH进行远程开发_Linux

来源:脚本之家  责任编辑:小易  

在管理Git项目上,很多时候都是直接使用https url克隆到本地,当然也有有些人使用SSH url克隆到本地。这两种方式的主要区别在于:使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。而使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,因此,如果你想要使用SSH url克隆的话,你必须是这个项目的拥有者。否则你是无法添加SSH key的,另外ssh默认是每次fetch和push代码都不需要输入账号和密码,如果你想要每次都输入账号密码才能进行fetch和push也可以另外进行设置www.zgxue.com防采集请勿采集本网。

0.为什么需要远程开发

SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有U NIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台—都可运行SSH。SSH另类应用:用ssh做socks5代理[1

在进行嵌入式Linux开发的时候,为了方便,通常在Windows上使用代码编辑器编辑代码,交叉编译工具在Linux虚拟机或者服务器上,在开发期间需要不停的进行如下的循环操作: 编辑好代码,使用基于SSH的SCP将文件上传到服务器; 使用SSH远程终端,在服务器上编译出可执行文件; 编译完成后使用基于SSH的SCP将文件传回到本地;

Telnet SSH是我们常用的远程管理协议,他们都是TCP协议,建立会话先要进行TCP三次握手,有确认机制所以是可靠的传输协议,端口号分别是23和22。Telnet采用明文传输,传输过程容易被窃取,除管理

这些操作都是基于SSH的,但是需要终端软件,文件传输软件, 并且不停地切换操作,过程很麻烦。

Git使用手册:HTTPS和SSH方式的区别和使用 这两种方式的主要区别在于: 使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和

如果本地的编辑器可以直接通过SSH打开远程服务器的目录,操作文件,执行命令,这就称之为远程开发,使用远程开发可以大大方便我们的开发过程。

而使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,因此,如果你问想答要使用SSH url克隆的话,你必须是这个项目的拥有者。否则你是无法添加SSH key的,另外ssh默认是每次fetch和push代码都不需要

1.Visual Studio Code Remote - SSH扩展

用户通过 STelnet 登录系统进行ssh登录。创建SSH用户,并配置相应的权限。local-user huawei service-type administrator ssh password simple 3com 。local-user adm service-type operator ssh

Remote Development extension pack是VS Code在今年5月份发布的扩展,该扩展包括三个扩展: Remote - SSH Remote - Containers Remote - WSL

这三个扩展分别支持将远程计算机,容器,或Windows子系统Linux(WSL)用作功能齐全的后台开发环境,本地的VS Code只是一个前端的界面,在本文中我们主要讲述如何使用SSH扩展,如图:

2.SSH扩展安装

2.1.确保在命令行可以使用ssh命令

如果使用的系统是Windows10,系统中已经自带了SSH,不能再使用Git的ssh:如图:

如果使用的系统是Windows7,不能安装OpenSSH,只能使用Git中的ssh命令,将Git安装目录中的usr\bin文件夹添加到系统环境变量中,该目录下包含ssh命令的可执行程序;

2.2.安装Visual Studio Code Insiders版本

注: VScode1.35版本起SSH扩展进入稳定版,可以正常使用扩展,直接跳至2.3节; VS code低于该版本需要安装VS Code内测版本;

VS Code的远程开发扩展目前还是预览版,所以需要提前下载安装 Visual Studio Code Insiders下载链接),即VS Code的内部测试版本,然后安装:

2.3.安装SSH扩展

在VS Code扩展市场搜索remote,选择Remote-SSH,点击安装:

3.远程主机安装SSH服务器

!!!

特别注意:SSH扩展只能连接64位的Linux操作系统。

!!!

在远程Linux主机上安装ssh服务器:

sudo apt-get install openssh-server

4.使用SSH扩展

4.1.设置SSH扩展显示登录终端

打开命令面板,输入ssh,选择设置:

4.2.启动SSH连接远程主机

SSH启动的方式有两种:

使用Ctrl+Shift+P打开命令面板,输入ssh,选择Connect to Host

直接点击左下角的ssh图标:

启动之后输入远程主机的用户名和ip地址,按回车进行连接:

所以会显示出SSH登录终端,输入用户的密码即可:

首次登录后,VS Code会自动弹出一个新的窗口用于远程工作,并且会自动在远程主机上安装VS Code server:

在登录过程中需要不断的输入密码,只要弹出就输入密码即可,如图:

登录成功后如图:

4.3.打开远程目录作为工作区

点击文件视图:

然后选择要打开的目录:

打开成功如下:

4.4.使用远程终端

直接点击新建终端即可打开Bash:

4.5.安装扩展

注意,在远程开发的时候扩展分为本地扩展和远程扩展:

5.记住常用主机

如图,打开配置文件:

选择 一个配置文件:

按如下格式填写内容,保存:

到此这篇关于使用VSCode和SSH进行远程开发的文章就介绍到这了,更多相关VSCode和SSH远程开发内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

主要是为了快速开发,配制方法,维护方便。“小点的项目我用JavaBEAN+SERVLET+JSP也能完成,规范可以加上DAO+SERVICE实现,速度也不会太慢”做个大点的试试就知道了。那首先要了解ssh的分工和其优势。Struts:一个jsp+servlet+Javabean的完美体现,MVC的最好诠释。HIBERNATE:把面向对象的dao层操作,ORM映射,数据的可移植,有自己的缓存。spring:一个 多扩展、灵活、容入了多种设计模式、面向对象编程思想的容器。SSH的集合 其实是 表现层、dao层、逻辑层的 明确分工,对于项目的开发 和后期维护带来的积大的方便。对于小项目 这样的结合反而会很糟糕,因为维护成本比较高。而对于中型项目 这样的结合便于整个项目的开发。这里struts看作是表现层、hibernate看作是DAO层,spring作为一个核心容器。至于性能 一般体现不出来,但遇到庞杂的数据操作和业务逻辑 其性能才会体现。所以JavaBEAN+SERVLET+JSP 和 SSH 其性能的可比性 要根据项目需求不同来定。SSH的结合 才是真正MVC的组合模式的完美体现。SSH这种东西你喜欢就用,不喜欢就不用,没有人说一定要用.构架也很多,用其它的也很多.标准也是相对的,比如一家公司都使用jsp+bean方式,你去用ssh开发对于公司来说当然就不标准了.反之一样.很多人都是人云亦云的说他好,在用ssh,就如同大广告一样,听多了,用的人多了.也是是它了.我觉得SSH开始之所以应用如此广泛,还是因为其流行。我在很多小公司待过,凭心而论,很多项目根本没有用SSH的必要。但是如果项目会不停的扩展,应用不停的做大,SSH就可以彰显出它的优势了。而且,当使用习惯了SSH之后,我觉得可以节省我们对架构的思考时间,进而节约成本,毕竟对于很多的小公司,只有赚钱才是硬道理。最后,用SSH,你可以跟客户说,我们用的是时下最流行的技术开发,也许…我认为 SSH 并不是快速开发,也不是标准的。我想有大多数人都是先写类再写接口的,为了接口而接口。试想一下,就目前中国的软件开发来说,使用 Spring 就真的能符合 OCP 的要求么?增加一个新的功能,能做到不去改动既有的代码么?ssh很好是万能的。如果用JavaBean+servlet+jsp开发就有很多问题。1。国际化不好实现,现在很多项目都要求有简体,繁体,英文版。所以用上struts比较好。2.如果用jdbc操作数据库很麻烦,如果是crm,erp系统数据库表一般很多,有些表字段也很多,你写sql估计要写的手都酸了。如果需求有改变。要增加几个字段。改动也不小,如果项 目中有人喜欢用select*from 那就更麻烦。所以用上hibernate会很好。有一些查询比如说表中关联的是ID,显示的时候要用名称,这时你还要写连接查询sql,显示的时候还要为这个 list 再写一个Javabean,但hibernate中就不用这样实现,直接可以查,3 一般模式一般不好实现事务管理,也许有很多Javabean+servlet模式开发的项目根本没有做事务控制内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • vscode remote ssh通过远程编辑与调试代码
  • vscode中利用git通过ssh连接github的方法
  • linux多线程编程(二)
  • linux环境下使用glog日志库的方法
  • linux定时删除日志的简单实现方法
  • linux修改用户所属组的方法
  • 在 ubuntu 中使用 ntp 进行时间同步设置
  • centos7 下安装telnet服务的实现方法
  • apache shiro 使用手册(二) shiro 认证
  • linux centos7断网下安装应用程序详解
  • 浅析linux环境变量export命令详解
  • 让你知道什么是 svn
  • 使用SSH到底是为了快速开发,还是为了标准?
  • HTTPS和SSH方式的区别和使用
  • Telnet和SSH的区别是?
  • 求助,telnet与ssh有什么不同呀?(linux)
  • ssh是什么?主要拿来干嘛?
  • telnet,ssh1和ssh2的区别
  • HTTPS和SSH方式的区别和使用
  • HTTPS和SSH方式的区别和使用
  • 如何在华为交换机中使用ssh登录?
  • 请大家详细介绍一下SSH模式
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全星外虚拟主机华众虚拟主机linuxwin服务器ftp服务器dns服务器tomcat nginxzabbix云和虚拟化服务器其它首页服务器linuxvscode remote ssh通过远程编辑与调试代码vscode中利用git通过ssh连接github的方法linux多线程编程(二)linux环境下使用glog日志库的方法linux定时删除日志的简单实现方法linux修改用户所属组的方法在 ubuntu 中使用 ntp 进行时间同步设置centos7 下安装telnet服务的实现方法apache shiro 使用手册(二) shiro 认证linux centos7断网下安装应用程序详解浅析linux环境变量export命令详解让你知道什么是 svnapache开启.htaccess及.htaccessservice temporarily unavailabllinux下实现免密码登录(超详细)apache rewrite url重定向功能的linux下用cron定时执行任务的方法apache性能测试工具ab使用详解centos 6.4安装配置lamp服务器(a阿里云服务器ping不通解决办法(centos+nginx+php+mysql详细配置apache you don""t have permiss详解linux搭建dns服务器centos7 mariadb主从复制配置搭建详解步骤apache 80端口被iis或其他服务占用怎么办linux引导系统的方法分析unix/linux系统下的nobody用户与nologin详linux下rpm、yum和源码三种安装方式详细介lamp环境安装所需的一些软件包下载地址整详解centos6.5下docker 环境搭建centos 5.4 服务器配置 yum安装apache+phcentos平台实现搭建rsync远程同步服务器的
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved