git 如何将本地分支和远程不同名分支关联起来???

2015-09-17 17:42:25 +08:00
 Wangxf

比如本地分支是 A,远程分支是 B,但是我使用 git push origin B 的时候出现了以下文字:
error: src refspec B does not match any.
error: failed to push some refs to 远程 Git 地址
我知道本地远程分支名都是 A 的话不会有这个问题,小伙伴们遇到过么?

7821 次点击
所在节点    git
12 条回复
nicktogo
2015-09-17 17:44:49 +08:00
push -u
or
A:B
nicktogo
2015-09-17 17:47:22 +08:00
@nicktogo 后一种错了,抱歉 HEAD :B
hantsy
2015-09-17 18:04:28 +08:00
git push origin A:B

用 小乌龟之类的可视化工具可以直接设置了。
shmilyin
2015-09-17 18:11:56 +08:00
和删除远程分支原理一样吧 git push origin :B //把空分支 push 上去
git push origin A:B 就是把 Apush 到 B 上。不过这样有个问题就是 push 之后 A 跟踪的时 B 分支了,如果要继续跟踪 A 分支,还要重新设置回来 麻烦。不如重新在本地建个 B 分支 push 上去
magicdawn
2015-09-17 18:17:33 +08:00
git checkout -b local_branch remote/other_branch

可能可以
Wangxf
2015-09-17 18:21:37 +08:00
@hantsy 这个可以,但是每次输入 A:B 很麻烦啊,如何将他们关联,以后直接 git push origin B 就行了?还有
Wangxf
2015-09-17 18:22:30 +08:00
@nicktogo 第二个可以,第一个不行
RR6116
2015-09-17 18:23:41 +08:00
试试这个
git branch --set-upstream A origin/B
Wangxf
2015-09-17 18:24:49 +08:00
@shmilyin 嗯,远程没有 A 分支了,远程只有 B ,而本地只有 A 分支
Wangxf
2015-09-17 18:25:11 +08:00
@RR6116 这个不行啊
hantsy
2015-09-17 18:27:02 +08:00
@Wangxf 好像不需要每次输入吧,,,第一次之后, GIT 会自动设置的,效果应该和 @RR6116 一样。
nicktogo
2015-09-17 18:50:35 +08:00
抱歉,是我的错了,应该是 git push -u origin HAED:B ,这样可以推到远程 B 分支上,同时设置为当前分支 A 的上游分支,这样之后如果想直接 git push ,好像 git2.0 版本要额外设置一下,记不清了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/221516

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX