如何将一个分支推送到另一个分支并切换分支?

59

我正在尝试实现这里提供的设置http://toroid.org/ams/git-website-howto,但有一个区别。在我的本地仓库中,我想使用与主分支不同的分支。

因此,当我尝试推送初始文件时,我希望将演示分支的文件推送到远程仓库的主分支,而不是推送主分支的文件。例如:

git push web +master:refs/heads/demo

但是当我这样做时,上传所有文件完成后,我会收到以下错误:

remote: fatal: You are on a branch yet to be born

使用这个设置,我正在尝试的操作是否可能实现?


3
推送操作的 refspec 是 <src>:<dest>。如果我正确理解你的问题,你现在把它们反过来了。 - Mat
1个回答

142

如果本地分支名为 "demo",并且您想将其推送到名为 "web" 的远程仓库的 "master" 分支,则执行以下操作:

git push web demo:master

如果你想将远程"web"上的"master"分支合并到你当前的分支中,可以执行以下操作:

git fetch web
git merge web/master

1
要将远程“web”上的“master”分支合并到您当前的分支中,您也可以简单地执行“git pull web master”。这本质上与在两个单独的命令中获取它并将其合并相同。 - Shehzan

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