https://www.cnblogs.com/zndxall/p/9140813.html
https://blog.csdn.net/qq_35168368/article/details/83109016
出现问题原因:commit相互依赖。具体讲就是:gerrit上已经存在commit A(commit A还未merge入库),然后你在commit A的代码基础上进行了修改(划重点,基于A修改!),并做了新的commit B,commit B已经包含了commit A的修改,于是在gerrit 上abondon commit A,只留下commit B在gerrit上,这样一来,commit B review通过后做merge时你就会得到标题中的错误。
解决方法:
1. 从远程分支上重新创建一个新的工作分支:git fetch origin master(远程分支):new_work(新分支)
或者:git checkout -b ccc remotes/origin/bbb
2. 切换到新的工作分支:git checkout new_work
3. 将commit B 移到新分支上(gerrit 页面右上角download中直接复制cherry-pich命令):git fetch ssh://xxx xxx && git cherry-pich FETCH_HEAD
4.正常解决冲突流程,不做复述
5. 如果git status看到的所有文件都是需要提交的,直接“git add .”即可,否者按需要执行git add。
然后再执行git commit -s ,此时会看到如下,删除其中的conflicts和对应的文件
6. 保存后推出继续提交,然后执行git push origin HEAD:refs/for/问题分支
7. Git push执行成功后,再刷新gerrit页面,重新做code review。 submit按钮有了,可以提交了,点击submit即可提交。