智能Git推送:并非所有引用都已推送

4
我已经开始学习Git一个星期了,现在在工作中遇到了问题。我在develop分支上做了一些更改,完成工作后尝试提交和推送,但是我无法摆脱最后一个错误。在这里,您可以看到Smartgit和日志的截图。同时,您也可以在这里查看日志文件。
2个回答

10

只需要制作即可

git checkout develop
git pull
git push

你之所以出现这个错误,是因为远程develop分支上有一些新的提交,而这些提交你的本地develop分支上没有,因此必须先获取这些变更。


嘿,弗拉德。我按照你说的做了,我想它起作用了,但在推送命令后,它仍然出现相同的错误。这是我的命令日志。 在git checkout develope之后; Already on 'develop' Your branch and 'origin/develop' have diverged, and have 2 and 3 different commits each, respectively. (use "git pull" to merge the remote branch into yours)。在git pull之后--> Already up-to-date! Merge made by the 'recursive' strategy. 最后,在推送之后 -->! [rejected] feature/HS-41 -> feature/HS-41 (non-fast-forward) - quartaela
你执行了 git pull 之后发生了什么? - Vlad Nikitin
在这里您可以查看完整的日志。同时也感谢您的帮助。http://justpaste.it/e7zn - quartaela
好的,如果你的远程名称是origin(使用git remote -v来检查),请尝试使用git pull origin develop拉取,然后再次执行git push。如果这不起作用,请给我输出下一个命令的结果:git branch -vvgit remote -vgit log --graph --decorate --all(前50行)。 - Vlad Nikitin
如果问题已经解决,我的问题是“出了什么问题,什么帮助了解决它?” - Vlad Nikitin
事实上,你的第一篇帖子就是正确答案。我以为有错误,但是最后一行给出的错误是关于一个未提交完成的功能。正如我所说,我正在开发而不是未提交的功能。所以,我成功地推送了我的更改,没有任何错误。无论如何,非常感谢你的帮助 :) - quartaela

1
先执行拉取(fetch)操作,再执行推送(push)操作,因为这表明远程仓库发生了变化。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接