当前位置:  开发笔记 > 运维 > 正文

为什么git在这个git推送中推向两个分支?

如何解决《为什么git在这个git推送中推向两个分支?》经验,为你挑选了1个好方法。

什么可能导致'git push'尝试并提交两个分支?我有自己的分支,我正在研究共享仓库和主分支.现在我只是想推到我的个人分支,经历了很好,但它也试图推动掌握并被拒绝.看起来像这样:

foo$ git push
Counting objects: 38, done.
Delta compression using 2 threads.
Compressing objects: 100% (19/19), done.
Writing objects: 100% (21/21), 9.73 KiB, done.
Total 21 (delta 14), reused 0 (delta 0)
To ssh://example.com/project.git
   8184634..86b621e  mybranch -> mybranch
 ! [rejected]        master -> master (non-fast forward)
error: failed to push some refs to 'ssh://example.com/project.git'  

我的配置如下所示:

remote.origin.url=ssh://example.com/project.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
branch.mybranch.remote=origin
branch.mybranch.merge=refs/heads/mybranch  

埃斯科指出,它正在推动两者,因为它们在我的配置中.如果我想要同时推动两者,而不是同时推动怎么办?当我检查mybranch并且git push时,我显然意味着推动mybranch而不是掌握.有时候我会检查master,编辑代码,并且还想提交/推送它.有两种方法可以共存吗?



1> Esko Luontol..:

git push没有任何参数的情况下使用时,它将推送具有相同名称的相应远程分支的所有本地分支.由于本地资源库设有分公司mastermybranch,也是远程仓库设有分支机构mastermybranch,Git会推动他们两个.

如果你只想推送一个分支,你可以明确地告诉Git你要推送哪个分支: git push origin mybranch

如果你想推送master,你可以先从master中拉出来解决这个错误.Git抱怨合并是非快进的,因为自上次你从主人那里撤出以来,其他人已经将提交推送到掌握.


不对.Git推送两个分支,因为"推送匹配"(推送存在于本地端和远程推送的分支)是默认行为.
推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有