解决Gerrit无法提交有冲突版本的笨办法

2011-08-31 @ taobao

 

如果在Gerrit上出现下面的情况:
        ---- C
      /   
---A-----  B

A : 是master上一次稳定的版本.
B : A之后发现了bug被P1紧急修复的版本, 已通过review并提交到master.
C : P2准备合并到master上的新增功能, 此时Gerrit不会允许C的提交.

解决办法是:
# 将本地master 分支与Gerrit的master进行同步, git pull origin master;
# checkout C 到本地一个分支上, git fetch origin refs/changes/${id} && git checkout FETCH_HEAD ;
# 令C 从 A rebase 到 B上, git rebase master;
## 解决可能的冲突后, git add . && git rebase --continue
# 与master合并
## git show 复制 commit SHA值 
## git checkout master && git merge ${SHA}
# 修改最近的commit msg, 增加C的change-id, git commit --amend;
# 更新C, git push origin HEAD:refs/for/master;
# 现在可以在Gerrit提交C到Master.

转载于:https://my.oschina.net/zhongl/blog/33018

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值