我在一个分支上提交了三个commit并将它们都推送到了远程仓库。然后我需要压缩这些commit,所以我使用了以下命令:
git reset --soft HEAD~3 && git commit
git push --force
在第二行,我遇到了致命错误:
The current branch [BRANCH-NAME] has no upstream branch.
To push the current branch and set the remote as upstream.
我尝试使用建议的命令 git push --set-upstream origin [BRANCH-NAME]
,但被告知当前分支的顶部落后于其远程对应分支。回头看,这很有道理,因为我目前在本地分支的索引1上,而远程的头部在索引3上。
现在我想做的基本上是让我本地拥有的压缩版本的分支替换远程的未压缩版本。这里正确的方法是什么?
我看了一些文章,比如这个,但它们没有帮助。