0
点赞
收藏
分享

微信扫一扫

GIT提交记录和Revert commit过程分析

一、根据GIT提交记录查看提交过程

先做个git分支的背景介绍

GIT提交记录和Revert commit过程分析_过程分析图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提交历史

GIT提交记录和Revert commit过程分析_git_02

2、提交历史列表

GIT提交记录和Revert commit过程分析_git_03

3、提交过程分析

1⃣️ 查看文件提交信息  此时是 F1分支

GIT提交记录和Revert commit过程分析_过程分析_04

2⃣️ 基于 1⃣️ 另外一个同事 又提交了一版本 即 F2 分支

GIT提交记录和Revert commit过程分析_git_05

3⃣️ 合并请求

GIT提交记录和Revert commit过程分析_当前版本_06

二、GIT revert 实战

1⃣️ 选中这一提交版本 进行Revret Commmit 即将当前版本及之后的提交记录全部都抹除

GIT提交记录和Revert commit过程分析_git_07

2⃣️ 提示有冲突

GIT提交记录和Revert commit过程分析_当前版本_08GIT提交记录和Revert commit过程分析_git_09冲突文件都会报红标识

3⃣️ 为什么会冲突

1)revert过程

a、把当前版本及之后的代码的痕迹抹除掉
b、然后再把上一版本的内容合并过来
c、此时出现冲突的情况
c-1 代码行变动

​比如上一版本第10行代码 这个版本有变动 则会导致冲突 ; 而不是和想象的一样:先把这个版本的第10行变动删掉 然后再把上一版本的第10行代码合并过来​

  • 打开冲突文件GIT提交记录和Revert commit过程分析_过程分析_10
  • 找到对应的代码提交记录

同一个地方有变动 看git提交记录 有红和绿就肯定会有冲突

GIT提交记录和Revert commit过程分析_git_11

c-2 如果是新增的代码行 则不会产生冲突
  • 代码提交记录GIT提交记录和Revert commit过程分析_过程分析_12
  • 冲突文件中对应的代码行 (这里就没有冲突了)

GIT提交记录和Revert commit过程分析_当前版本_13


举报

相关推荐

0 条评论