比如场景是A和B协同开发:
A在master
分之上新提交了一个commit
,然后push
到Gerrit的Review Repo上。
B去Review了之后,发现了一些错误,通过checkout
到本地FETCH_HEAD
并修改了一些错误,然后--amend
之后,在原来的基础上提交了Patch Set 2
。
那么此时A该如何在不生成新的commit
的前提下,优雅的同步B打的Patch Set 2
到自己本地?
PS:这里不改变每次打patch的change-id。
1
shibo501c 2015-07-07 10:09:14 +08:00
A reset到提交前的commit,然后再把B的checkout到本地呢?
|
2
losincasablanca 2015-07-07 12:51:56 +08:00
1.fetch Patch Set 2
2.merge to local branch |
4
mintist OP @losincasablanca 你是说新建个本地分支么?还是说直接merge到master上,如果是后者,会产生新的commit,那么还要在本地cherry-pick才能再打新的patch到原来的commit上。
不晓得我的理解对不对 |
5
jiangbingo 2017-06-09 16:37:00 +08:00
git pull -f origin patch set2 ?
|
6
jiangbingo 2020-04-01 17:10:17 +08:00
@jiangbingo 三年过去了,我还在疑惑 gerrit 这个问题。
|
7
jiangbingo 2020-04-01 17:19:53 +08:00
目前的操作是两个笨办法
## gerrit web 上 - 在 A 的 ticket 上通过菜单 edit-add 增加改动的文件 - done editing -publishement 生成新的 patch 这种方法只适用同步没有 conflict 的 ticket ## 本地 - 将 B checkout 出来生成 1.diff - apply 1.diff 到 A 上,有冲突解决冲突。 |