将两个本地提交合并为一个并在 git 中推送到 master

merge two local commits into single and push to master in git

我在本地有两个提交:commit1 和 commit2。

commit1 已合并。 commit2 在 commit1 之上。

现在,当我尝试推送 commit2 时,它 试图将两个提交一起推送 并且它被远程拒绝说 commit1 已经被合并并且远程拒绝两个提交。我的意图是将 commit1 的更改保留在 commit2 中,并仅将 commit2 推送到 masted。我该怎么做?

因为 commit1 已经 merged/pushed 到远程分支,所以可以通过 rebase 来更新本地分支。 git pull -r 之后,commit2 可以单独推送到 commit1 之上。 git push origin master:master 或在 gerrit 审查的情况下 git push origin HEAD:refs/for/master