合并:
git cherry-pick 0e15dd11^..f9fa5688
git push origin HEAD:refs/for/develop
提交报错:
# git push origin HEAD:refs/for/dev
Enumerating objects: 37, done.
Counting objects: 100% (37/37), done.
Delta compression using up to 80 threads
Compressing objects: 100% (24/24), done.
Writing objects: 100% (24/24), 5.86 KiB | 5.86 MiB/s, done.
Total 24 (delta 21), reused 0 (delta 0)
remote: Resolving deltas: 100% (21/21)
remote: Processing changes: refs: 1, done
To ssh:192.168.78.12:80/ac
! [remote rejected] HEAD -> refs/for/dev (change http://192.168.78.142:80/ac closed)
error: failed to push some refs to 'ssh://ac@192.168.78.12:80/ac'
原因:
有相同的 Change-Id,也可能未必。
尝试:
git commit --amend,
找到Change-Id, 把 Change-id 删了再次提交,错误一样。
git commit --amend --no-edit
再次提交,错误一样。
git rebase -i HEAD~2
因合并了两个提交,所以是 2 。再次提交,错误一样。
重新修改一个提交,再提交,错误一样。
解决:
分步提交,即合并一次、修改Change-Id里的说明一次、提交一次。
git cherry-pick f9fa5688
git commit --amend
git push origin HEAD:refs/for/develop
git cherry-pick 0e15dd11
git commit --amend
git push origin HEAD:refs/for/develop
提交正常。