从我找到的一些答案(example)中,我了解到如果我执行git push
,只有当前的分支提交会被推送。然而,当我输入'git push`‘时,我得到了以下输出(部分):
. . .
Writing objects: 100% (12/12), 999 bytes | 0 bytes/s, done.
Total 12 (delta 4), reused 0 (delta 0)
To https://gitlab.bla-bla.git
773f335..db28181 doedev_userAgentTest -> doedev_userAgentTest
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'https://gitlab.bla-bla.git'
. . .
我现在的分支是doedev_userAgentTest
$ git status
On branch doedev_userAgentTest
因此,我从上面的输出中了解到,对当前分支的提交是正确的(我确认了我提交的文件实际上在远程回购中),但是有人试图推送主分支,但失败了。
因此,我的问题是(在推给主人时忽略错误):
注意:我确实远程拥有上面提到的所有分支。
发布于 2016-06-22 08:51:48
Git从它有一个远程分支的分支中推入。
若要推送当前分支,请使用以下语法:
git push origin mybranch
如果您的遥控器没有命名为origin
,那么使用正确的名称。
此外,请注意,此行为取决于您的git配置。这里有更多信息:Does "git push" push all commits from other branches?
发布于 2016-06-22 08:57:08
没有额外选项的git push
的行为取决于git配置。
由于远程主机已经被其他人更新,所以拒绝了主的推送。您可以运行git pull origin --rebase master
来首先更新本地主服务器。
如果您只想推动主人,git push origin master:master
总是一个安全的运行。
更新:如果您只想推动doedev_userAgentTest
,您可以运行git push origin doedev_userAgentTest:doedev_userAgentTest
。如果签出doedev_userAgentTest
,git push origin HEAD:doedev_userAgentTest
也能工作。在前一种情况下,可以省略:doedev_userAgentTest
。
https://stackoverflow.com/questions/37962988
复制相似问题