当本地存储库未指向时,我觉得git pull --rebase是更好的选择
到当前分支的尖端。在这种情况下,当我们尝试执行git push时,会引发错误消息
我们应该做“ git pull”。我的问题是“告诉用户使用git pull --rebase"
不是一个好主意
当他们试图在存储库未指向提示时进行推送。
答案 0 :(得分:0)
git pull
是git fetch
和git merge
的快捷方式。 git pull --rebase
用git merge
替换git rebase
。因此,要在执行git push
时了解您的消息,就需要了解git rebase
的行为。简而言之,此命令将复制当前分支中不在您要拉取的分支上的提交,并在该分支的顶部重写它们。这意味着git pull --rebase
之后的分支与其在远程上的当前状态具有不同的历史记录。为了正确地更新您的遥控器,您应该执行git push -f
,这将强制您当前的分支覆盖该遥控器。
警告
执行git push -f
很危险,因为它会覆盖远程分支。如果其他人在同一分支上工作,则他们将拥有带有旧提交的本地副本。然后,他们在执行git push
时会看到与您看到的相同的错误。当您是唯一在分支上工作的人时,才可以强制推动。
有关重新定级的更多详细信息,建议您使用git help rebase
来查看手册页。