git cherry-pick相关介绍

git cherry-pick 用于把另一个本地分支的commit修改应用到当前分支。
实际问题 
   在本地  master  分支上做了一个 commit  (  38361a68138140827b31b72f8bbfd88b3705d77a  ) , 如何把它放到 本地 old_adc 分支上? 
办法之一: 使用  cherry-pick .  根据git 文档:
Apply the changes introduced by some existing commits 
就是对已经存在的commit 进行apply (可以理解为再次提交)
简单用法
git cherry-pick <commit id>
例如:
$ git checkout old_adc
git   cherry-pick   38361a68
1. 如果顺利,就会正常提交。结果:
Finished one cherry-pick.
# On branch old_adc

# Your branch is ahead of 'origin/old_adc' by 3 commits.


如果整个分支要cherry-pick另外一个分支的代码:

1.下载代码

repo init -u ssh://gerrit.ccdomain.com:29418/git/android/platform/manifest--repo-url ssh://gerrit.ccdomain.com:29418/git/android/tools/repo --repo-branchzeusis-stable --no-repo-verify -q -b zs_master -mzeusis/MSM8976_OREO_20171019.xml --reference /home/mirror

repo sync -j16

 

 

2.获取log

 

repo forall -c "echo ==== &&pwd && git log --oneline --since "2017-10-19 13:44""> ~/log.txt

 

3.切换分支

repo forall -c "git checkout -bmsm8976_oreo_20171019 remotes/zsgit/msm8976_oreo_20171019"

 

4.cherry-pick

 

git cherry-pick commit-id(从旧到新进行cherry-pick)

 

如果有冲突使用gitcherry-pick --abort 记录有冲突的commit-id,发给开发人员,将已cherry-pick的活动push

 

5.push

 

git push zsgit HEAD:msm8976_oreo_20171019


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值