当前位置: 首页 > news >正文

合并多次commit记录

合并多次commit记录

  • 1. 首先先提交多次记录
  • 2. 某个版本之前的commit记录合并

1. 首先先提交多次记录

在log中可以看到有多次commit 记录
然后拉取最新代码

(base) ➜  gaolijie git:(master) git pull --rebase origin master

From https://gitee.com/Blue_Pepsi_Cola/gaolijie
 * branch            master     -> FETCH_HEAD
Already up to date.

执行合并代码

(base) ➜  gaolijie git:(master) git rebase -i HEAD~3

执行了 rebase 之后会弹出一个窗口,让你选择合并哪些 commit 记录

pick 3ca6ec3   '注释**********'
pick 1b40566   '注释*********'
pick 53f244a   '注释**********'

需要把 pick 改为 s 或 squash,需要留第一个,第一个不要改,意思是下面的 commit 记录都合并到第一个上面去。

pick 3ca6ec3   '注释**********'
s 1b40566   '注释*********'
s 53f244a   '注释**********'

保存退出

如果有冲突,可以先解决冲突,解决完之后执行:

git add .
git rebase --continue

如果没有冲突,或者冲突已经解决,会弹出窗口,让你注释掉一些提交记录,这里是让我们编辑自己合并的这些记录的概览,如:完成了什么功能,按照实际情况填写。

# This is a combination of 3 commits.
# This is the 1st commit message:
这里是填写最新的commit
#fix: 5

# This is the commit message #2:

#fix: 6

# This is the commit message #3:

#合并fix7 8 9

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date:      Sun Feb 16 18:36:08 2025 +0800
#
# interactive rebase in progress; onto 130579e
# Last commands done (3 commands done):
#    squash 1fa1b57 fix: 6
#    squash f54005d 合并fix7 8 9
# No commands remaining.
# You are currently rebasing branch 'master' on '130579e'.
#
# Changes to be committed:
#       modified:   README.md

在这里插入图片描述

保存退出,按下 esc 再按 :然后输入 wq 或 x 保存
如图:有 Successfully rebased and updated 字样就代表合并成功了

在这里插入图片描述

(base) ➜  gaolijie git:(master) git push -f
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 342 bytes | 342.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Powered by GITEE.COM [1.1.5]
remote: Set trace flag 064712a5
To https://gitee.com/Blue_Pepsi_Cola/gaolijie.git
 + f54005d...6950c9d master -> master (forced update)

最后git push -f

2. 某个版本之前的commit记录合并

也可以指定合并某个版本之前的版本:git rebase -i 00c7d7ff 但不包含 00c7d7ff,至合并他之前的。
00c7d7ff
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

  • 股票数据接口API实例代码python、JAVA等多种语言演示免费获取实时数据、历史数据、CDMA、KDJ等指标数据配有API说明文档
  • 求矩阵对角线元素的最大值
  • 机器视觉3D工业相机机器视觉检测的优缺点
  • 解决前后端日期传输因时区差异导致日期少一天的问题
  • 【c++】【Linux】【进程】线程终止/崩溃 会导致进程终止/崩溃 吗?
  • 【油漆面积——线段树,扫描线,不用pushdown的特例,pushup兼有cal的性质】
  • 大数据如何帮助你在业务中创造奇迹?
  • 【HarmonyOS Next】图片选择方案
  • 精选Python小项目代码
  • 【前端框架】深入探讨 Vue 3 组件生命周期的变化和最佳实践
  • 卓越设计彰显品质:福特中国“烈马宇宙”项目展示高质量标准
  • linux--关于GCC、动态库静态库
  • kubectl exec 实现的原理
  • 【SQL技术】不同数据库引擎 SQL 优化方案剖析
  • 30天自制操作系统第一天(1)
  • 微信小程序性能优化
  • 寒假第三周周报
  • 基于JAVA的幼儿园管理系统的设计与实现源码(springboot+vue+mysql)
  • [创业之路-307]:如何解读公司的业绩?它与股价变化的关系?
  • c++中std::thread构造函数的注意事项
  • 试点首发进口消费品检验便利化措施,上海海关与上海商务委发文
  • 阿里上财年营收增6%,蒋凡:会积极投资,把更多淘宝用户转变成即时零售用户
  • 中方是否计划解除或调整稀土出口管制?外交部回应
  • 长期吃太饱,身体会发生什么变化?
  • “AD365特应性皮炎疾病教育项目”启动,助力提升认知与规范诊疗
  • 龚正市长调研闵行区,更加奋发有为地稳增长促转型,久久为功增强发展后劲