你的分支在3次提交之前超过'origin / master'

运行git status时,我得到以下内容

Your branch is ahead of 'origin/master' by 3 commits.

我已经读过一些其他帖子解决这个问题的方式是运行git pull --rebase但是rebase究竟是什么,我会丢失数据还是这种与master同步的简单方法?


您收到该消息是因为您在本地主服务器中进行了更改,而您没有将它们推送到远程服务器。 你有几种方法来“解决”它,它通常取决于你的工作流程如何:

  • 在一个好的工作流程中,你的远程副本应该是最好的,而你的本地副本只是远程副本。 使用这个工作流程,您将永远不会再收到此消息。
  • 如果你以另一种方式工作,并且应该推动你的本地更改,那么只要git push origin假设origin是你的远程
  • 如果您的本地更改不正确,那么删除它们或将本地主服务器重置为远程git reset --hard origin/master

  • 没有什么可以解决的。 你只做了3个提交,还没有将它们移动到远程分支。 有几种选择,取决于你想要做什么:

  • git push :将更改移到远程(如果远程已经有其他更改,这可能会被拒绝)
  • 什么都不做,并保持编码,另一天同步
  • git pull :从远程获取更改(如果有)并将它们合并到您的更改中
  • git pull --rebase :如上所述,但尝试在远程更改之上重做您的提交
  • 你处于一个经典的情况下(尽管在大多数工作流程中,你通常不会在主人面前犯太多的情况)。 这是我通常会做的:查看我的更改。 也许做一个git rebase --interactive做一些化妆品,放弃那些吸吮,重新排序,使他们更合乎逻辑。 现在用git push将它们移动到远程。 如果因为我的本地分支不是最新的而被拒绝: git pull --rebase在最近的更改之上重做我的工作并再次git push


    使用这4个简单的命令

    第1步git checkout <branch_name>

    进入该分支很明显。

    第2步git pull -s recursive -X theirs

    如果发生冲突,请采取远程分支更改并更换其更改。 在这里,如果你做的是git status你会得到像这样的分支,你的分支在3次提交之前就超过了'origin / master'。

    第3步git reset --hard origin/<branch_name>

    第4步git fetch

    硬重置您的分支。

    请享用。

    链接地址: http://www.djcxy.com/p/23149.html

    上一篇: Your branch is ahead of 'origin/master' by 3 commits

    下一篇: How many Activities vs Fragments?