将本地主分支提交推送到远程分支

13

我一直在本地克隆一个远程 git 存储库,并将我的更改提交到本地主分支。现在,我想将我的提交推送到远程存储库。但是,我希望将我的本地提交与远程主分支分开,以免破坏任何内容。我该如何将我的本地提交推送到新的远程分支?


1
为什么不将本地跟踪分支合并,然后将本地分支推送到远程分支呢? - Eric Walker
这个回答是否解决了你的问题?如何将本地 Git 分支推送到远程的主分支? - Tom Hale
3个回答

21

您应该运行 git help push ,它将告诉您有关要推送到的refspec语法的信息。 简而言之,git push <remotename> <local_branch_name>:<remote_branch_name>


1
对我来说,我必须执行以下操作: git remote(获取远程名称,我的是origin) git push -f origin UI-Addition:UI-Addition 如果没有-f选项,它将不允许该操作。 - Danuofr
这对我来说失败了。它显示“错误:无法推送到未经合格验证的目标:temp2。目标refspec既不匹配远程上的现有ref,也不以refs/开头,我们无法根据源ref猜测前缀。” - John Henckel

2

我不能用单个命令完成此操作。首先,我将所有更改提交到我的本地主分支。然后,我使用以下命令创建一个名为"mybranch"的新本地分支:

git checkout -b mybranch

然后我使用了推送功能。
git push -u origin mybranch

在我的情况下,origin 是远程名称。你的远程名称可能不同。你可以使用 git remote -v 查看你的远程名称应该是什么。

推送后,如果你想要的话,可以使用以下两个命令来删除本地分支

git checkout master
git branch -d mybranch

希望这能有所帮助。

0
我所做的是创建一个新的本地分支,例如命名为test1> git checkout -b test1 这个命令将创建一个分支并直接切换到它,然后通过键入以下命令将您的新本地分支推送到远程存储库(GitHub或GitLab): > git push origin test1 不要忘记通过键入以下命令检查正确的链接。 > git remote --v

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