一、根据GIT提交记录查看提交过程
先做个git分支的背景介绍
图1
步骤说明
- 1⃣️ 项目A 默认分支是 master
- 2⃣️ 基于master分支创建 f1、f2、test分支
- 3⃣️ f1 发起合并请求到 test分支
- 4⃣️ f2 fetch & merge test分支 (此时可能会有冲突)
- 5⃣️ (若有冲突 则解决冲突)发起合并请求到test分支
注意:第4⃣️步 在f2 merge test分支的时候,test的历史提交记录 在f2分支上也会同步过来
1、查看某一个文件的git提交历史
2、提交历史列表
3、提交过程分析
1⃣️ 查看文件提交信息 此时是 F1分支
2⃣️ 基于 1⃣️ 另外一个同事 又提交了一版本 即 F2 分支
3⃣️ 合并请求
二、GIT revert 实战
1⃣️ 选中这一提交版本 进行Revret Commmit 即将当前版本及之后的提交记录全部都抹除
2⃣️ 提示有冲突
冲突文件都会报红标识
3⃣️ 为什么会冲突
1)revert过程
a、把当前版本及之后的代码的痕迹抹除掉
b、然后再把上一版本的内容合并过来
c、此时出现冲突的情况
c-1 代码行变动
比如上一版本第10行代码 这个版本有变动 则会导致冲突 ; 而不是和想象的一样:先把这个版本的第10行变动删掉 然后再把上一版本的第10行代码合并过来
- 打开冲突文件
- 找到对应的代码提交记录
同一个地方有变动 看git提交记录 有红和绿就肯定会有冲突
c-2 如果是新增的代码行 则不会产生冲突
- 代码提交记录
- 冲突文件中对应的代码行 (这里就没有冲突了)