【一篇入魂】Git全教程,让你快速上手!

1 Git

1.1 git的概述

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

1.2 git的服务器地址

国内git服务器地址:https://gitee.com/
国外git服务器地址:https://github.com/

两个gitee帐号mayaole&mayaole2

1.3 Git原理图

【一篇入魂】Git全教程,让你快速上手!

2 实战

这里使用IDEA内置的git功能来讲解使用
在学习前先安装git管理工具到本地
git工具默认安装的路径如下图,安装完后把bin目录添加path变量中,在终端可以查看git工具的版本号在这里插入图片描述
【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!

2.1 工作时开发的注意事项

代码需要备份【主要是防止代码丢失】
每个大版本都需要备份分支持【主要是1.0出现问题时,不能在2.0的版本上修复】
每天上午上班,要从服务器下载最新的代码到本地
每天下午下班前,把自己的代码提交到服务器
团队开发时需要解决文件冲突问题

2.2 commit,push,branches,master讲解

课程目标:掌握每一个使用步骤的原理
Step1:

安装Git工具后在IEDA里的配置git的命令执行路径
【一篇入魂】Git全教程,让你快速上手!

Step2:

在码云上创建空白的Java仓库,用于存储工作中开发的代码备份

【一篇入魂】Git全教程,让你快速上手!

Step3:

上传本地空项目到码云上,让仓库拥有一个项目结构
在IEDA中创建一个同名JavaWeb项目
【一篇入魂】Git全教程,让你快速上手!
在src目录中随便先在某个包下创建个Servlet
【一篇入魂】Git全教程,让你快速上手!
在gitee中,找到上传文件
【一篇入魂】Git全教程,让你快速上手!
然后把桌面gyfdemo01目录下的文件上传到git网站中【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!

Step4:

在IDEA中从码云下载项目,下载的地址就是在git中克隆的位置
https://gitee.com/mayaole/gyfdemo01.git
以后就在这个仓库上开发
找到VCS,选择git,表示从服务器下载代码
【一篇入魂】Git全教程,让你快速上手!
然后把git的仓库地址复制,如图,然后点clone复制份到本机桌面的某个文件夹下
这前的空项目就不再用了
在这里插入图片描述
克隆后如下图:
【一篇入魂】Git全教程,让你快速上手!

Step5:

添加定单功能,多写个OrderServlet文件
新创建一个文【一篇入魂】Git全教程,让你快速上手!件时,把有下面的弹窗口,选择Yes
【一篇入魂】Git全教程,让你快速上手!
如果不小心选中了No,可以通过另一种方式添加到本地仓库缓存
如图,点击文件右键

Step6:

提交代码并写上备注到主杆

【一篇入魂】Git全教程,让你快速上手!

Step7:

再次任意修改添加文件,然后提交
【一篇入魂】Git全教程,让你快速上手!

Step8:

把代码推到服务器
【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!
在推的过程中,会弹出输入git服务器的用户名和密码,输入即可
推送成功后,在码云服务器会看到更新的功能
【一篇入魂】Git全教程,让你快速上手!

Step9

再写点功能,再写个UserService提交,然后发布1.0版本,添加分枝
选择创建分枝
【一篇入魂】Git全教程,让你快速上手!
新创建一个分枝
【一篇入魂】Git全教程,让你快速上手!

【一篇入魂】Git全教程,让你快速上手!

Step10:

切换回主杆
【一篇入魂】Git全教程,让你快速上手!

Step11:

在主杆上进行2.0的开发,添加邮件发送功能
【一篇入魂】Git全教程,让你快速上手!

Step12

切换回1.0分枝,进行Bug修复,然后提交

【一篇入魂】Git全教程,让你快速上手!

Step13:

推1.0代码到服务器
【一篇入魂】Git全教程,让你快速上手!

Step14:

不要忘记把主杆也推上服务器,先切换回主杆,再push
【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!

Step15:

将master分枝与1.0分枝合并

【一篇入魂】Git全教程,让你快速上手!【一篇入魂】Git全教程,让你快速上手!

合并后,就把master推上服务器
从mater中创建2.0分枝,那么master就是3.0分枝了,然后把2.0推到服务器

【一篇入魂】Git全教程,让你快速上手!

【一篇入魂】Git全教程,让你快速上手!

【一篇入魂】Git全教程,让你快速上手!

2.3提交历史记录查看

【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!

2.4对比不同版本的区别

【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!

2.5回退到上一个版本

比如你误删了一段代码(方法),但又提交了,可以使用下面的get来进行回退

【一篇入魂】Git全教程,让你快速上手!

2.6 团队开发,解决冲突

Step1:

使用虚拟机里的IDEA下载代码【两个同学一组演示】

【一篇入魂】Git全教程,让你快速上手!
Step2:
添加其它开发者到当前项目组

【一篇入魂】Git全教程,让你快速上手!
Step3:

在虚拟机中给某个类添加一些代码,比如添加个方法,然后push到服务器
在push服务器中,可能失败,因为你没有把另一个开发者的帐号添加到项目组中

【一篇入魂】Git全教程,让你快速上手!

【一篇入魂】Git全教程,让你快速上手!
Step4:

在本机中也在同一个文件中修改或者添加代码
然后push到服务器会失败,因为代码冲突了

【一篇入魂】Git全教程,让你快速上手!
【一篇入魂】Git全教程,让你快速上手!
合并前
【一篇入魂】Git全教程,让你快速上手!

合并后,然后再次push即可以了
注意:A开发者更新后,另一个开发者可以重新pull更新代码到本地
【一篇入魂】Git全教程,让你快速上手!