【发布时间】:2021-11-28 10:55:30
【问题描述】:
我正在 GitHub 上处理团队项目。 我正面临错误:
更新被拒绝,因为推送的分支提示位于其远程后面 对方。查看此分支并集成远程更改 (e.g. 'git pull ...') 再次推送之前。
情况如下: 我从 GitHub 中提取主分支代码并开始在本地处理它,后来我使用此命令将更改推送到 temp_branch。
git push origin main:temp_branch
与此同时,GitHub 上的主分支中添加了一些其他更改(我在 temp_branch 上的更改尚未合并),我被告知要进行一些其他更改。
现在,我进行了更改并尝试使用这两个命令推送到同一个 temp_branch
git pull --rebase origin main
git push origin main:temp_branch
在执行此操作时,我收到了上述错误。我指的是这个链接,但它并不能完全回答我的问题,它建议使用 -f 强制推送来覆盖我不想的内容。
Updates were rejected because the tip of your current branch is behind its remote counterpart
我想知道这里到底发生了什么以及如何解决这个问题?
【问题讨论】:
-
您没有集成远程更改。你所做的只是在
origin master上变基,你真正想做的是在origin/main:temp_branch上变基? -
origin main:sighs: -
整合更改,最终正如链接问题中提到的那样,您需要以某种方式强制它通过
--force或更具限制性的替代方案之一--force-with-lease或--force-if-includes.
标签: git branch rebase git-push git-pull