从git仓储的一个分支上获取某次提交的代码到另一个分支

81 篇文章 7 订阅

前言:

如果我们使用git来管理自己的代码的话,可能就会遇到我标题上说的那个问题。

  • 我们所要完成的项目在git上不一定只有一个分支,很多项目有都会有两个或者两个以上的分支。
  • 但是如果我们在其中一个分支上提交了代码,但是突然被告知,这个分支停用了,分支的代码已经merge到了一个新的分支上了,而恰巧我们的提交在merge之后,那难道我们只能在重新改一下新分支的对应的代码吗?

这块用两个分支简单解释一下:
分支一:master,分之二:dev

程序员:我们在master分支上提交了一次改动的代码。
经理老大:master昨天不用了,代码已经merge到dev分支上了。
程序员:啊?那我在dev上改一下,重新提交一下吧,稍等!
经理老大:不用,我来教你一招。

我们都知道,在git上每一次提交代码,都会给我们的这次commit 生成一个唯一的 hash 值

所以,完成操作只需要三步走:

  1. git clone <dev 分支代码>
  2. git cherry-pick <master 分支上提交的代码的hash值>
  3. git push

注意:

  • 写命令的时候千万别把<> 带上,哈哈。
  • 执行完命令 2 之后,相当于我们在正常情况下执行了两步:
    1. 把git仓储上master提交的此hash值对应的代码拿到dev分支下。
    2. 然后执行了 git commit -m ""
  • 所以千万要记得执行 git push
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值