Git错误,Updates were rejected because the tip of your current branch is behind

问题:Updates were rejected because the tip of your current branch is behind

在push代码时,遇到这种问题Updates were rejected because the tip of your current branch is behind
(更新被拒绝,因为当前分支的尖端落后)

解决

有三种方案

  1. push前先将远程repository修改pull下来
git pull origin master
git push -u origin master
  1. 使用强制push的方法:
git push -u origin master -f 

这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。

  1. 若不想merge远程和本地修改,可以先创建新的分支:
git branch [name]
#然后push
git push -u origin [name]

衍生问题

使用上述方法在pull时可能会遇到如下问题
1.git pull 提示refusing to merge unrelated histories
这个有解决办法

2.There is no tracking information for the current branch(没有当前分支的跟踪信息)
是因为本地分支和远程分支没有建立联系
(使用git branch -vv 可以查看本地分支和远程分支的关联关系,查看远程分支 git remote -v)
解决方法:
1)是直接指定远程master:

git pull origin master

​2)另外一种方法就是先指定本地master到远程的master,然后再去pull:

git branch --set-upstream-to=origin/远程分支的名字  本地分支的名字
git pull

关于git remote可以看看这篇文章

posted @ 2020-10-20 10:20  樱阙诗汀  阅读(9109)  评论(0编辑  收藏  举报