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

github合并多个commit message以及rebase解决文件冲突

github仓库合并多个commit message

问题描述如下:
在这里插入图片描述

第一步:确保自己在对应分支上

比如说现在我要合并issue/108分支的提交记录,使用git log --oneline查看提交记录一共有6次,

git log --oneline

在这里插入图片描述

第二步:使用rebase功能

git rebase -i HEAD~6

在这里插入图片描述
将上述内容修改如下,把第二行以后的pick改成s即可
在这里插入图片描述

由于vscode默认打开的是nano编辑器,将内容做好修改以后,需要保存文件,保存过程是:

  1. Ctrl + O(不会退出,会提示保存)
  2. Enter(确认保存)
  3. Ctrl + X(退出nano)

第三步:

编辑合并后的Commit Message,保存并退出 nano 后,Git 会弹出另一个编辑窗口,用于编辑最终的 commit message,你会看到所有被 squash 的提交消息,类似:
在这里插入图片描述
此时可以修改这些message,比如说我修改为下面这个内容,继续保存并退出文件。
在这里插入图片描述

  1. Ctrl + O(不会退出,会提示保存)
  2. Enter(确认保存)
  3. Ctrl + X(退出nano)

第四步:

上一步结束以后界面是
在这里插入图片描述

第五步:强制推送即可:

git push origin issue/108 --force

github解决rebase文件冲突

issue/18从main分支切出来,但是main分支被别人做了修改,导致issue/18目前和main存在文件冲突,现在使用rebase来解决冲突。

第一步:

git pull最新的main和最新的issue/18分支,成功以后切换到issue/18

git checkout main
git pull
git checkout issue/18
git pull

第二步:使用rebase命令,展示出冲突文件

git rebase main
git status

在这里插入图片描述
在这里插入图片描述

第三步:点击冲突文件xmake.lua

比如说我选择接受当前,然后点击右下角的Complete Merge
[图片]
在这里插入图片描述

第四步:根据提示继续rebase

git rebase --continue

打印出下面这个界面
在这里插入图片描述

第五步:检查rebase是否完成

为了安全起见,我不修改任何提交信息,直接使用Esc,以及:wq保存并且退出,打印出下面这个界面,下面这个git rebase --continue是上一步的,不需要额外再用
在这里插入图片描述
这里要注意,如果这一步使用git status会打印出
在这里插入图片描述
千万不要理会,千万不要使用git pull,直接强制推送即可,

git push origin issue/18 --force
http://www.dtcms.com/a/103265.html

相关文章:

  • cisco简单DHCP配置
  • 第三章:ROS基础_《ROS机器人开发实践》_notes
  • 【全队项目】智能学术海报生成系统PosterGenius--风格个性化调整
  • vulnhub-serile靶机通关攻略
  • 在PyCharm 中免费集成Amazon CodeWhisperer
  • 【CSS3】04-标准流 + 浮动 + flex布局
  • 【大模型基础_毛玉仁】5.4 定位编辑法:ROME
  • 嵌入式图像采集与显示系统实战详解:基于V4L2与Framebuffer的实现
  • 单元测试中的测试替身(基于Java的示例)
  • 21 模板方法(Template Method)模式
  • Jmeter(性能指标、指标插件、测试问题、面试题、讲解稿)
  • Linux : System V 共享内存
  • 基于srpingboot智慧校园管理服务平台的设计与实现(源码+文档+部署讲解)
  • 基于SpringBoot的“小说阅读平台”的设计与实现(源码+数据库+文档+PPT)
  • 基于springboot+vue的校园数字化图书馆系统
  • 【RAGFlow】ubuntu22部署ragflow(v0.17.2)
  • Cursor 使用 APIkey 配置 Anthropic Claude BaseURL , gpt-4o,deepseek等大模型代理指南
  • 基于单片机的并联均流电源设计(论文+源码)
  • 《C语言:从诞生到成为编程基石的历史之旅》
  • c# 获取redis中所有的value
  • 快速入手-基于DRF跨域配置django-cors-headers(十三)
  • nodejs 文件相关
  • GRU原理
  • 1.1 轴承故障数据预处理与时频图提取
  • 踏过强化学习的每一步推导
  • C++基础算法(插入排序)
  • 学习如何设计大规模系统,为系统设计面试做准备!
  • Uniapp自定义TabBar组件全封装实践与疑难问题解决方案
  • sscanf() 用法详解
  • docker 安装多次 Jenkins后,插件全部报错