git合并多次提交

简介

Git是一个分布式版本控制系统,它允许开发人员在不同的分支上进行并行开发,并将这些分支合并到主分支或其他分支中。在开发过程中,我们经常会创建多个commit来记录每次的代码变更。有时候我们希望将这些连续的commit合并为一个更有意义的commit,以提高代码的可读性和维护性。

合并多个commit的好处包括:

  1. 提高代码可读性:合并多个commit可以将相关的代码变更放在一起,使得代码更加有逻辑性,方便他人阅读和理解。
  2. 简化代码历史:合并多个commit可以减少不必要的commit记录,使代码历史更加简洁和清晰。
  3. 优化代码提交:合并多个commit可以减少不必要的代码冲突和合并操作,提高代码提交的效率。

方法

本文介绍如何通过git rebase命令来合并多次commit提交,其步骤如下:

  1. git log查看历史提交记录。在本文的例子中,共有4次提交,我们的目的是合并后三次提交。
  2. 输入git rebase -i HEAD~3,这里3表示合并最近的三次提交。
  3. 输入上述命令后,会跳出如下界面。在对该界面进行编辑时,首先需要了解2个操作,分别是picksquash ,其含义分别为选择该commit并作为最终merge后的commit,将该commit merge到前面的commit中。在本例中,我们将commit C和commit D的改动merge到commit B中去。修改完毕后,保存并退出。
  4. 3中保存并退出后,会跳出另一个界面,用来修改提交时的备注信息,如下图所示:

    将上图中的commit信息修改如下:

    然后保存并退出。
  5. 再次输入git log,可以发现最近3次commit已经如我们预期的那样,合并在了一起,且commit信息为commit BCD。
相关推荐
A_Lonely_Cat1 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
和你看星星3 天前
Git rerere:让重复冲突只解决一次
git
嘻嘻仙人7 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson7 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友7 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金8 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git
江华森8 天前
Git 基础筑基:从原理到团队协作的全栈实战
git
JakeJiang8 天前
Git 必备命令指南:从日常高频到项目开发实战
git
叫我少年9 天前
Windows 中安装 git
git
深海鱼在掘金14 天前
Git 完全指南 —— 第1章:Git 概览与版本控制演进
git