Gui基础使用之项目部署

🎬 艳艳耶✌️:个人主页

🔥 个人专栏 :《Spring与Mybatis集成整合》《Vue.js使用》

⛺️ 越努力 ,越幸运。

1.gui图形化界面的使用

1.1 前期准备

新建仓库,具体操作如下:

初始化readme文件:

1.2 Git图形化界面的使用

1.2.1 文件代码克隆

然后在回到本地资源管理器中新建一个路径,再右击鼠标打开Git GUI here,及具体操作如下:

这里需要提到,如果是按上篇博客用Git Bash去克隆代码的话,则必须使用命令git clone,使用Git Gui的话则不需要用命令操作。

选第二个

新建perdon.java

然后保存,回到Git Gui界面,点击刷新,即可看到我们刚刚新建的文件,如下:

在这时将刚刚新建的Person中的java代码进行改动,并且在Person所在目录下新增含有查询语句的sql文件,如下:

2.ssh协议

2.1 定义

SSH(Secure Shell)是一种加密的网络协议 ,用于在不安全的网络上安全地运行网络服务。SSH最常见的用途是通过安全的方式远程登录到计算机系统,但它还可以用于安全地传输文件和执行各种网络服务。SSH的主要设计目标是提供强大的身份验证、加密通信和数据完整性。

SSH协议有两个主要版本,即SSH-1和SSH-2。SSH-2是SSH协议的较新版本,它在安全性和功能上都有一些改进,而SSH-1则已经过时。 SSH的工作方式涉及客户端和服务器之间的安全连接,通过这个连接进行加密的远程终端访问、文件传输和命令执行。

2.2 特点

SSH(Secure Shell)协议具有以下特点:

加密通信: SSH协议提供了安全的数据传输,使用加密技术来保护通信的机密性。所有通过SSH协议传输的数据都经过加密,包括用户名、密码、执行的命令和传输的文件。

身份验证: SSH支持多种身份验证方法,其中最常见的是公钥认证和密码认证。公钥认证是一种更加安全的身份验证方式,可以降低密码泄露的风险。

端到端的安全性: SSH协议提供端到端的安全性,确保数据在本地计算机和远程服务器之间的传输是受保护的。即使在不受信任的网络中传输数据,也不易受到中间人攻击。

**远程访问:**SSH允许用户从本地计算机远程连接到远程主机,并执行命令、访问远程Shell会话。这在服务器管理和维护方面非常有用。

文件传输: SSH支持安全的文件传输协议,如SCP(Secure Copy Protocol)和SFTP(SSH File Transfer Protocol),使用户能够在本地计算机和远程服务器之间安全地传输文件。

灵活性: SSH协议非常灵活,可以在不同操作系统和平台上运行,支持各种加密算法和身份验证方法。这使得它适用于多种环境。

**多版本支持:**SSH协议有两个主要版本,SSH-1和SSH-2。SSH-2是较新、更安全的版本,广泛使用,而SSH-1已经过时。

配置和自定义: 用户可以通过配置文件来自定义SSH连接的参数,以适应其需求。这包括定义身份验证方法、指定端口号、设置密钥等。

秘钥管理: SSH允许用户管理公钥和私钥对,使其更容易进行身份验证。SSH代理可以帮助用户有效地管理他们的密钥。

Known Hosts: SSH客户端维护一个"known_hosts"文件,其中包含已知主机的公钥。这有助于防止中间人攻击,因为客户端可以验证连接的远程主机的身份。
总之,SSH协议的主要特点是提供了安全、加密的远程访问和文件传输服务,适用于各种计算机网络环境,并提供多种身份验证方法以确保通信的安全性。这使得SSH成为许多组织和个人的首选工具,用于保护敏感数据和进行远程管理。

2.3 SSH协议与SSL/TLS协议的区别

SSH协议和SSL/TLS协议是两种不同的安全通信协议,虽然它们都用于加密通信,但在设计目的、使用场景和工作方式上有一些关键的区别。

2.3.1 设计目的和应用场景

SSH(Secure Shell): 主要设计用于远程登录和执行命令。它提供了一个安全的命令行接口,使用户能够在远程计算机上执行操作。除了远程登录,SSH还支持安全文件传输和端口转发等功能。

SSL/TLS(Secure Sockets Layer/Transport Layer Security): 主要设计用于保护网络通信的安全性,广泛应用于Web浏览器与服务器之间的加密通信。TLS是SSL的继任者,两者通常被通称为SSL/TLS。SSL/TLS在Web浏览器中用于加密HTTPS连接,提供了端到端的加密通信,同时也可用于其他应用程序。

2.3.2 通信方式

SSH: 提供点对点的安全通信,通常用于远程管理和控制。SSH会话经常以命令行方式进行,但也可以用于图形用户界面(GUI)的远程桌面。

SSL/TLS: 通常用于端到端的安全通信,例如在客户端和服务器之间的浏览器与Web服务器之间的通信。SSL/TLS可以用于各种应用程序,不仅限于远程管理。

2.3.3 端口和协议

SSH: 默认使用22号端口,基于TCP协议。

SSL/TLS: 通常在HTTP的基础上,通过加密形成HTTPS,使用的端口是443。可以在不同的应用层协议上实现,如HTTPS(HTTP over TLS)。

2.3.4 身份验证方式

SSH: 支持多种身份验证方式,包括密码、公钥和其他方法。

SSL/TLS: 通常使用数字证书来进行身份验证,其中服务器和客户端都可以验证对方的身份。

2.3.5 应用领域

SSH: 主要用于系统管理、远程终端访问和文件传输等。

SSL/TLS: 主要用于加密Web通信,保护数据在浏览器和服务器之间的传输。

2.3.6 工作层次

SSH: 在应用层之上工作,提供了一个安全的命令行接口。

SSL/TLS: 在传输层之上工作,为应用层提供加密和认证服务。

总体来说,虽然SSH和SSL/TLS都为安全通信提供了解决方案,但它们在设计目的和使用场景上存在差异。SSH更专注于远程管理和终端访问,而SSL/TLS广泛应用于网络通信的安全保护,特别是在Web浏览器与服务器之间的加密通信。

2.4 什么是SSH Key

SSH(Secure Shell)密钥是一种用于在计算机之间进行安全通信的加密密钥。SSH协议主要用于远程登录和执行命令,以及安全地传输文件。SSH密钥通过非对称加密技术实现安全通信。

SSH密钥是一对密钥,包括公钥和私钥:

私钥(Private Key): 私钥是保存在用户本地计算机上的敏感文件,用于对信息进行加密和数字签名。私钥必须保持机密,不应该被共享或泄露。

公钥(Public Key): 公钥是与私钥配对的公共部分,可以在网络上自由传播。公钥用于验证由私钥签名的信息或加密的数据。其他用户可以使用你的公钥加密信息,只有拥有私钥的用户才能解密。

使用SSH密钥的主要目的是确保通信的机密性和完整性,同时提供身份验证机制。当你连接到一个支持SSH的服务器时,你可以使用SSH密钥对进行身份验证,而不是输入密码。

SSH密钥的使用流程:

生成密钥对: 通过使用SSH密钥生成工具,你可以生成一对公私钥。

将公钥上传到服务器: 服务器上的SSH服务需要知道你的公钥以进行身份验证。通常,你需要将公钥添加到服务器上的~/.ssh/authorized_keys文件中。

使用私钥进行身份验证: 当你连接到服务器时,SSH客户端将使用私钥进行身份验证。如果私钥匹配服务器上的公钥,则连接将被授权。

保护私钥: 由于私钥是安全性的关键,确保私钥文件只有你有权访问,并在可能的情况下使用密码保护。

使用SSH密钥相对于密码身份验证具有更高的安全性,因为私钥通常更难以猜测或被破解。

2.5 使用SSH协议克隆对应文件代码

2.5.1 前期准备
(1)远程仓库代码状态

在使用SSH克隆代码前,我们需要将远程仓库(即gitee码云)的开源状态更改为私有,操作如下:

具体操作如下:

接着按四个回车键;

生成生功就会在电脑用户目录有.ssh文件

双击进去可以发现生成了两个密钥,一个是公钥一个是私钥,如下:

双击进入公钥,复制公钥,将其配置到Gitee码云上,具体步骤如下:

2.5.2 SSH协议克隆文件代码

3.idea集成Git

如果新建了一个项目,需要托管到gitee上,就执行以下步骤:

在IDEA中配置git.exe文件。

在IDEA中安装gitee插件(因为默认情况下git.exe是配合GitHub来使用的)。

在IDEA中登录Gitee。

在IDEA中登录Gitee。

分享搭建好的项目。

3.1 配置git.exe文件

打开IDEA,点击File------>Settings,然后搜索git,进入以下界面后,具体操作如下:

3.2. IDEA安装gitee

3.3. IDEA中登入Git

到gitee官网的个人中心,再点击个人设置,找安全设置中找到私人令牌。

3.4. 项目分享

将项目在idea中环境搭建后之后,准备分享项目到远程仓库的私有仓库中。

在idea中找到VCS,再选中import后点击Share Project on Gitee,将项目分享到仓库

3.5.获取当前上传的项目

在导航栏的VCS-Get from Version Control中获取私有仓库的项目

输入分享人账号的仓库中的SSH地址,并且选择项目存放路径

3.6项目上传Git

在导航栏中的VCS-import into Version Control-Share Project on Gitee中进行分享上传

相关推荐
XMYX-01 小时前
使用 SSH 蜜罐提升安全性和记录攻击活动
linux·ssh
但老师3 小时前
Git遇到“fatal: bad object refs/heads/master - 副本”问题的解决办法
git
秃头女孩y3 小时前
git创建分支
git
研究是为了理解8 小时前
Git Bash 常用命令
git·elasticsearch·bash
DKPT8 小时前
Git 的基本概念和使用方式
git
Winston Wood11 小时前
一文了解git TAG
git·版本控制
喵喵先森12 小时前
Git 的基本概念和使用方式
git·源代码管理
xianwu54313 小时前
反向代理模块
linux·开发语言·网络·git
Amelio_Ming13 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
binishuaio15 小时前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git