合并修改缺陷分支的commit到master分支

合并修改缺陷分支的commit到master分支

当我们在修改缺陷的时候,我们会开辟一个分支,专门用来修改缺陷例如hotfix

当我们在hotfix上commit的代码,想要合并到master分支,这时我们要怎么处理呢

我们使用 git cherry-pick:合并提交节点到其他分支,将指定的提交(commit)应用于其他分支

我们这里使用hotfix和master做举例

javascript 复制代码
git checkout hotfix # 先切换到提交过的那个分支
git log # 查找要合并分支的commit提交值
git checkout master # 切换到要合并的master分支
git cherry-pick <commit_id>

commit_id就是git log查找到的commit id

这样就在master分支上合并了在hotfix中commit的那次提交

cherry pick 支持的其他提交方式

javascript 复制代码
git cherry-pick Dev # 应用Dev分支最新的提交

git cherry-pick <commit_id1> <commit_id2> # 合并commit_id1 和 commit_id2 两次体提交

注意执行git cherry-pick 后 只是将提交合并到本地 需要执行 git push指令 才会将合并commit 提交到远程仓库

报错处理。

如果在cherry-pick的时候出现类似以下错误提示,那可能是是对同一提交重复做cherry-pick引起的。

The previous cherry-pick is now empty, possibly due to conflict resolution.

If you wish to commit it anyway, use:

git commit --allow-empty

Otherwise, please use 'git cherry-pick --skip'

On branch auto-7940289-dev-0b41beba

Your branch is up to date with 'origin/auto-7940289-dev-0b41beba'.

You are currently cherry-picking commit e924fd2.

(all conflicts fixed: run "git cherry-pick --continue")

(use "git cherry-pick --skip" to skip this patch)

(use "git cherry-pick --abort" to cancel the cherry-pick operation)

Error content分析:没有冲突输出,而是提示如果要提交则需要做空提交(git commit --allow-empty),说明这次cherry-pick的内容可能已经在这个分支上提交过了。

可以验证:1、查看这个哈希值所修改的文件 2、查看某个文件的修改log 3、有相同的提交注释

相关推荐
yanyu-yaya1 分钟前
第四章 react-redux,@reduxjs/toolkit依赖,学习
前端·学习·react.js
小付同学呀6 分钟前
前端快速入门学习3——CSS介绍与选择器
前端·css·学习
Jenlybein7 分钟前
快速了解浏览器原理及工作流程
前端·浏览器
醋醋7 分钟前
vue2源码记录(2)
前端·vue.js
前端飞天猪8 分钟前
学习笔记:企业级Git代码规范与协作指南💖
前端·github
艾克马斯奎普特8 分钟前
Vue.js 3 渐进式实现之响应式系统——第五节:分支切换与 cleanup
前端·vue.js
总之就是非常可爱10 分钟前
五分钟看懂 alien signals 依赖收集原理
前端·vue.js
Bruce_Liuxiaowei10 分钟前
基于Flask的Windows命令大全Web应用技术解析与架构设计
前端·windows·python·flask
EricXJ11 分钟前
npm、Yarn、pnpm Workspace 对比
前端·javascript
DoraBigHead14 分钟前
🔬 深度解析:前端异步模型的本质机制与工程落点
前端