目录
Gitee新建仓库,具体操作如下:
初始化readme文件:
初始化完成之后的效果:
然后在回到本地资源管理器中新建一个路径,再右击鼠标打开Git GUI here,及具体操作如下:
这里需要提到,如果是按上篇博客用Git Bash去克隆代码的话,则必须使用命令git clone,使用Git Gui的话则不需要用命令操作。
具体操作如下:
克隆后的效果:
可以看到此时里面啥也没有,这时候我们新建Person.java,并且往里面写点代码,如下:
然后保存,回到Git Gui界面,点击刷新,即可看到我们刚刚新建的文件,如下:
此时,我们将刚刚新建的Person中的java代码进行改动,并且在Person所在目录下新增含有查询语句的sql文件,如下:
然后回到Git Gui界面刷新,刷新后的界面如下:
紧接着我们将Person暂存,操作及效果如下:
其实到这里大致也看出来了,Git Gui图形化界面相较于命令窗口可以很大程度的加快我们的操作时间,提高我们的开发效率。
这里我们需要先了解Git Gui界面的一些详情,如下:
暂存演示效果,如下:
提交与注释演示效果,如下:
进行Push远程推送前:
远程推送演示效果:
进行Push远程推送后:
- SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络上安全地运行网络服务。SSH最常见的用途是通过安全的方式远程登录到计算机系统,但它还可以用于安全地传输文件和执行各种网络服务。SSH的主要设计目标是提供强大的身份验证、加密通信和数据完整性。
- SSH协议有两个主要版本,即SSH-1和SSH-2。SSH-2是SSH协议的较新版本,它在安全性和功能上都有一些改进,而SSH-1则已经过时。 SSH的工作方式涉及客户端和服务器之间的安全连接,通过这个连接进行加密的远程终端访问、文件传输和命令执行。
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成为许多组织和个人的首选工具,用于保护敏感数据和进行远程管理。
SSH协议和SSL/TLS协议是两种不同的安全通信协议,虽然它们都用于加密通信,但在设计目的、使用场景和工作方式上有一些关键的区别。
SSH(Secure Shell): 主要设计用于远程登录和执行命令。它提供了一个安全的命令行接口,使用户能够在远程计算机上执行操作。除了远程登录,SSH还支持安全文件传输和端口转发等功能。
SSL/TLS(Secure Sockets Layer/Transport Layer Security): 主要设计用于保护网络通信的安全性,广泛应用于Web浏览器与服务器之间的加密通信。TLS是SSL的继任者,两者通常被通称为SSL/TLS。SSL/TLS在Web浏览器中用于加密HTTPS连接,提供了端到端的加密通信,同时也可用于其他应用程序。
SSH: 提供点对点的安全通信,通常用于远程管理和控制。SSH会话经常以命令行方式进行,但也可以用于图形用户界面(GUI)的远程桌面。
SSL/TLS: 通常用于端到端的安全通信,例如在客户端和服务器之间的浏览器与Web服务器之间的通信。SSL/TLS可以用于各种应用程序,不仅限于远程管理。
SSH: 默认使用22号端口,基于TCP协议。
SSL/TLS: 通常在HTTP的基础上,通过加密形成HTTPS,使用的端口是443。可以在不同的应用层协议上实现,如HTTPS(HTTP over TLS)。
SSH: 支持多种身份验证方式,包括密码、公钥和其他方法。
SSL/TLS: 通常使用数字证书来进行身份验证,其中服务器和客户端都可以验证对方的身份。
SSH: 主要用于系统管理、远程终端访问和文件传输等。
SSL/TLS: 主要用于加密Web通信,保护数据在浏览器和服务器之间的传输。
SSH: 在应用层之上工作,提供了一个安全的命令行接口。
SSL/TLS: 在传输层之上工作,为应用层提供加密和认证服务。
总体来说,虽然SSH和SSL/TLS都为安全通信提供了解决方案,但它们在设计目的和使用场景上存在差异。SSH更专注于远程管理和终端访问,而SSL/TLS广泛应用于网络通信的安全保护,特别是在Web浏览器与服务器之间的加密通信。
SSH(Secure Shell)密钥是一种用于在计算机之间进行安全通信的加密密钥。SSH协议主要用于远程登录和执行命令,以及安全地传输文件。SSH密钥通过非对称加密技术实现安全通信。
SSH密钥是一对密钥,包括公钥和私钥:
私钥(Private Key): 私钥是保存在用户本地计算机上的敏感文件,用于对信息进行加密和数字签名。私钥必须保持机密,不应该被共享或泄露。
公钥(Public Key): 公钥是与私钥配对的公共部分,可以在网络上自由传播。公钥用于验证由私钥签名的信息或加密的数据。其他用户可以使用你的公钥加密信息,只有拥有私钥的用户才能解密。
使用SSH密钥的主要目的是确保通信的机密性和完整性,同时提供身份验证机制。当你连接到一个支持SSH的服务器时,你可以使用SSH密钥对进行身份验证,而不是输入密码。
SSH密钥的使用流程:
生成密钥对: 通过使用SSH密钥生成工具,你可以生成一对公私钥。
将公钥上传到服务器: 服务器上的SSH服务需要知道你的公钥以进行身份验证。通常,你需要将公钥添加到服务器上的
~/.ssh/authorized_keys
文件中。使用私钥进行身份验证: 当你连接到服务器时,SSH客户端将使用私钥进行身份验证。如果私钥匹配服务器上的公钥,则连接将被授权。
保护私钥: 由于私钥是安全性的关键,确保私钥文件只有你有权访问,并在可能的情况下使用密码保护。
使用SSH密钥相对于密码身份验证具有更高的安全性,因为私钥通常更难以猜测或被破解。
在使用SSH克隆代码前,我们需要将远程仓库(即gitee码云)的开源状态更改为私有,操作如下:
点击管理:
将是否开源更改为私有:
具体步骤如下:
首先打开计算机当前用户下的本地资源,找到.gitconfig文件,如下:
双击用记事本打开文件,然后复制email地址,如下:
然后利用命令生成密钥,命令如下:
ssh-keygen -t rsa -C "xxx@xx.com"//这里的邮箱要换成自己注册时的邮箱
具体操作如下:
然后回到计算机用户目录下,如下:
双击进去可以发现生成了两个密钥,一个是公钥一个是私钥,如下:
然后我们双击进入公钥,复制公钥,将其配置到Gitee码云上,具体步骤如下:
公钥添加成功:
复制Gitee仓库上的SSH,如下:
然后打开命令窗口进行克隆,如下:
然后输入Yes即可克隆成功,效果如下:
假设案例:
当新建了一个项目,需要托管到gitee上,就执行以下步骤:
在IDEA中配置git.exe文件。
在IDEA中安装gitee插件(因为默认情况下git.exe是配合GitHub来使用的)。
在IDEA中登录Gitee。
在IDEA中登录Gitee。
分享搭建好的项目。
打开IDEA,点击File——>Settings,然后搜索git,进入以下界面后,具体操作如下:
配置完之后测试,测试成功后应用即可:
因为因为默认情况下git.exe是配合GitHub来使用的,所以我们需要下载Gitee插件。默认情况:
搜索plugins,点击plugins,上方输入Gitee搜索进行下载然后重启IDEA即可。
回到Gitee界面,点击私人令牌,点击生成新令牌,具体操作如下:
然后自定义私人令牌描述并提交:
然后输入Gitee密码验证身份即可,如下:
私人令牌生成成功,如下:
最后将Token私人令牌复制,以便后面IDEA中登录Gitee。
具体操作如下:
然后点击Log in登录即可,登录后的效果如下:
具体操作如下:
选中你要上传的项目后,在上方导航栏找到VCS并且如以下操作:
然后点击选中private私有并且填好对应信息,点击share即可,如下:
上传后的效果如下:
具体步骤如下:
然后点击Clone,点击Yes即可。
Add添加了之后执行commit提交,如下:
具体操作如下:
推送成功:
Gitee上的效果:
但是此时,上传代码的用户还未更新代码,如下:
所以我们需要拿到更新后的代码。
具体操作如下:
新增代码:
另一台电脑上新增代码:
在另一台电脑上推送失败,push后出现以下界面:
Merge后效果:
这里发现有错误,于是重新试了一遍,如下:
IDEA1页面代码:
IDEA2页面代码:
最终结果如下:
最后Git Gui的使用+关于SSH协议和克隆对应文件代码+IDEA集成Git等就到这里,祝大家在敲代码的路上一路通畅!