我和我的朋友对同一个分支进行了修改,然后推到了它上面,过了一段时间我尝试做同样的事情,但我得到了。但我得错误说:
error: failed to push some refs to '<repo_name>'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
所以我从远程分支机构拉了一下并解决了合并冲突。
但在那之后,当我试图向遥控器推进时,包括我和我朋友的变化,它说:
Everything up-to-date
但我的更改仍未反映在远程仓库中。我在这里缺少什么?
答案 0 :(得分:4)
您的local branch
落后于remote branch
。因此,首先拉出遥控器的更改,然后推动您的更改。
$ git fetch
$ git pull origin <branch-name>
$ git push origin HEAD
或者,您可以使用rebase
。这需要所有远程提交,然后将您的提交放在top in git log
。
$ git pull --rebase
$ git push origin HEAD # push your local commit(s)
答案 1 :(得分:1)
与其他答案一样,您可能需要直接指定远程参考,因为看起来您的跟踪分支似乎不能设置为推送到正确的远程参考。
例如,git push origin <branchName>
。
答案 2 :(得分:0)
您可以使用
从分支中提取朋友的更改git pull origin <branchName>
解决冲突(如果有),然后尝试
git push origin <branchName>