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。
相关推荐
_道隐_2 小时前
git stash save 和 git stash push有什么区别?
git
_道隐_4 小时前
git stash如何pop指定的stash change?
git
PC2005-cloud6 小时前
Git学习笔记:GitHub Git Data API 完全指南,用 Go 操控 Git 底层对象
笔记·git·学习
Python私教21 小时前
AI 并行编码的 Worktree 生命周期:创建、隔离与安全回收
人工智能·git
互联网中的一颗神经元1 天前
16 — 改写历史 rebase:搬家到新楼层,不是合并
git
互联网中的一颗神经元1 天前
19 — 贮藏与清理:stash 是抽屉,gc 是打包箱
git
用户330144867631 天前
20 — 远程进阶:强制推送的保险绳——force-with-lease
git
Cooper251 天前
别急着改 Git 历史:rebase、cherry-pick、bisect 与 reflog 的安全操作顺序
git
刚入门的大一新生1 天前
Linux-版本控制器Git
git
扶苏10021 天前
同一个 Git 项目整出两份,切分支互不影响?两种方案实测
大数据·git·elasticsearch