gerrit push多个commit,其中一个关联的commit被abandon,另一个无法正常merge

137 阅读1分钟
问题

我有两个提交。提交B取决于提交A.提交A被放弃。导致B无法正常merge
在这里插入图片描述

解决办法
1.git checkout yourbranch(确保你在正确的分支)
2.git log 记录下 A B的commit哈希值[a ->08afa6347a50a9e28f6ebc5609f42bdb8e2f891c    b-->1332c2af33a3700a99a6d9a914b431f3fd075562]
3.git reset --hard 08afa6347a50a9e28f6ebc5609f42bdb8e2f891c^^(在A之前将所有内容重置为提交)
4.git cherry-pick 1332c2af33a3700a99a6d9a914b431f3fd075562(其中B是你要保留的提交的哈希值)
5.合并冲突
6.git add *
7.git commit -m "merge"
覆盖 
8.git commit --amend
E-->进入vim
i--->开始

在这里插入图片描述

将B的change-id   覆盖到Change-id
Esc  :wq

git push origin HEAD:refs/for/yourbranch(确保你在正确的分支)