Git:合并多个commit 的高级技巧

前言

在我们的日常项目开发中,git commit -m 无疑是使用最频繁的指令,这也造成了大量的commit 在我们的分支上。这样常常会带来分支过长、版本过多的问题。

正文

想要解决这个问题,我们通常会对commit 进行合并。

当我们发现两个commit 或多个commit 存在很强的关联性、并且几个commit 加起来也可以成为一个完整的描述的时候,就可以对这些commit 进行合并。

实操

先用git log 查看一下历史。

image.png

比如这里有4 条commit 记录,我们想把前两条合并。

我们应该复制第三条commit 的id(从上至下),然后使用命令git rebase -i id(44c29…)

这次就会进入编辑commit 界面

image.png

上方是选中的两次commit ,下方是各种操作的指令,按i 进行编辑模式。
这里我们需要将红色区域的第二个pick 改为 s,意为向上保存

image.png

按下 ESC 键退出编辑模式,按下 :wq 保存退出,我们的commit 就算合并好了,进入预览界面。此时再次保存退出就好了。

image.png

到这步就将两次commit 合并成功了!

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/7634

(0)
郭靖的头像郭靖
上一篇 2023年3月15日 下午4:21
下一篇 2023年3月16日 下午4:41

相关推荐

  • Linux如何调整Swap空间大小

    查看当前Swap文件位置以及大小 要查看当前正在使用的swap文件或分区的位置,您可以使用swapon命令。 执行以下命令: 这将显示所有活动的swap空间,包括其类型(例如文件或分区)、大小、使用情况和位置。 如果您只对文件路径或分区路径感兴趣,您可以通过/proc/swaps文件查看相同的信息: 这将列出系统上所有的swap空间,包括它们的位置。 设置一…

    2023年11月6日
    1.3K00
  • pve 虚拟机关机未成功被锁定,如何解决

    有时我们在回滚快照时,因为某一些错误并不能正确回滚,导致LXC容器被锁定,导致我们无法进入系统,只需要在Proxmox VE下输入解锁命令即可解锁。 例如我有一个LXC容器Ubuntu系统,因为快照回滚失败被锁定,容器加了一个锁并变为rollback状态,此时此容器无法打开。 只需要在Proxmox VE命令行窗口输入解锁命令即可解锁。 如果是虚拟机被锁定则…

    2024年6月17日
    2.3K00
  • Linux 系统硬盘MBR转换为GPT格式并扩容

    问题描述之前创建了一台ubuntu16的服务器虚机,挂载了一块2T的云数据盘,当时文件系统做的是MBR(dos)格式,最近因为存量数据增加,数据盘空间不足就在云平台将2T的数据盘扩容成了4T,结果进入虚机扩容的时候报错MBR格式的硬盘最大支持2T,剩余的空间将不会用到。需要将硬盘转化为GPT分区格式,来支持2T以上空间的使用才行,但是转化硬盘格式又怕数据丢失…

    2023年11月23日
    1.7K00
  • Linux实验案例:构建Samba文件共享服务器

    根据公司的信息化建设要求,公司需要在局域网内部搭建一台文件服务器,便于对数据的集中管理和备份。考虑服务器的运行效率及稳定性、安全性问题,选择在CentOS系统中构建Samba服务器以提供文件资源共享服务。 需求描述 1.在/var/share/目录中建立三个子目录public、training、devel,用途如下。 public目录用于存放公共数据,如公司…

    2024年6月24日
    1.7K00
  • 800 多个 Kubectl 常用命令,再也不怕不会用 Kubernetes!

    这个存储库包含脚本 gener_ aliases.py 可以生成数百个方便的 kubectl shell 别名,您不再需要拼写出每个命令和–flag 参数。 通过命令/标志排列创建的 shell 别名示例如下: 示例 800 个别名,下面列出一部分: 访问下面地址,查看所有别名: 安装 您可以直接下载 bash/zsh 的文件…

    2023年7月26日
    1.2K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信