git-将分支中的某次commit,合到其它分支(cherry-pick)

一、场景与问题

     在实际开发中我们一般都是同一主分支下有多个子分支,那假如我有主分支下有测试分支A本地分支B,我在本地更改代码后commit到了分支B中,分支B自测没问题后,我需要将commit到B的内容推给分支A,这样该如何处理呐?

二、解决步骤

①我们可以先通过 git log 命令,查看(记录)需要转移commit提交的hash数值

             例如:zyl分支下-ic卡校验的提交
                        分支hash值:b7c2befb...(一般只记录前8位即可)

②然后我们切换到目标分支

             $ git checkout 分支A

③通过git自带的cherry-pick命令转移

             $ git cherry-pick b7c2befb

*注意:

1)如果有多个commit要移到 只需放多个commit的hash值即可

          例如   $ git cherry-pick b7c2befb 3c9063b6

2) cherry-pick处理后原分支的commit提交依旧在,准确说这个命令 是复制某个commit到其它分支,而不是移动。

如果需要清理掉本地分支C中的commit提交可以使用git reset

$ git checkout master
Switched to branch 'master'
$ git reset --hard HEAD~1
HEAD is now at 776f8ca Change about title and delete error page

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值