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

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

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

先做个git分支的背景介绍

微信图片_20220421225854.png

图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提交历史

微信图片_20220421225858.png

2、提交历史列表

微信图片_20220421225905.png

3、提交过程分析

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

微信图片_20220421225909.png

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

微信图片_20220421225914.png

3⃣️ 合并请求

微信图片_20220421225918.png

二、GIT revert 实战

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

微信图片_20220421225921.png

2⃣️ 提示有冲突

微信图片_20220421225927.png

微信图片_20220421225931.png

冲突文件都会报红标识

3⃣️ 为什么会冲突

1)revert过程

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

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

  • 打开冲突文件

微信图片_20220421225936.png

  • 找到对应的代码提交记录

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

微信图片_20220421225945.png

c-2 如果是新增的代码行 则不会产生冲突
  • 代码提交记录

微信图片_20220421225951.png

  • 冲突文件中对应的代码行 (这里就没有冲突了)

微信图片_20220421225955.png

相关文章
|
8月前
|
人工智能 缓存 开发工具
结合企业实践来规范你的Git commit(含插件使用指南)
结合企业实践来规范你的Git commit(含插件使用指南)
结合企业实践来规范你的Git commit(含插件使用指南)
|
8月前
|
JSON 开发工具 git
git rebase 合并当前分支的多个commit记录
git rebase 合并当前分支的多个commit记录
169 1
|
4月前
|
开发工具 git 索引
$ git revert -m v1.0.21 6003eb5f5b455f0a3dfb74f48f63878e7 error: option `mainline' expect
$ git revert -m v1.0.21 6003eb5f5b455f0a3dfb74f48f63878e7 error: option `mainline' expect
|
4月前
|
开发工具 git
GIT:如何合并已commit的信息并进行push操作
通过上述步骤,您可以有效地合并已提交的信息,并保持项目的提交历史整洁。记得在执行这些操作之前备份当前工作状态,以防万一。这样的做法不仅有助于项目维护,也能提升团队协作的效率。
169 4
|
4月前
|
开发工具 git
GIT:如何合并已commit的信息并进行push操作
通过上述步骤,您可以有效地合并已提交的信息,并保持项目的提交历史整洁。记得在执行这些操作之前备份当前工作状态,以防万一。这样的做法不仅有助于项目维护,也能提升团队协作的效率。
290 3
|
3月前
|
Linux 开发工具 git
企业级Git管理工作流分析--GIT实战详解
企业级Git管理工作流分析--GIT实战详解
55 0
|
5月前
|
开发工具 git
Git——commit的提交规范
Git——commit的提交规范
124 4
|
5月前
|
测试技术 持续交付 开发工具
[译] 为何每次 Git Commit 要尽可能小?
[译] 为何每次 Git Commit 要尽可能小?
|
5月前
|
Java 开发工具 Android开发
Android Studio利用Build.gradle导入Git commit ID、Git Branch、User等版本信息
本文介绍了在Android Studio项目中通过修改`build.gradle`脚本来自动获取并添加Git的commit ID、branch名称和用户信息到BuildConfig类中,从而实现在编译时将这些版本信息加入到APK中的方法。
106 0
|
6月前
|
前端开发 JavaScript 开发工具
前端优化之路:git commit 校验拦截
前面在git分支规范那篇文章里,介绍了commit提交规范,但是想要做到高效落地执行,就需要做些别的功课。