如何在不设置上游的情况下将当前分支推送到远程?

6
我可以将分支推送到远程服务器:
git push --set-upstream origin 293-error-pages

我可以通过明确指定当前分支来推送分支,而无需设置上游分支:

git push origin 293-error-pages

如何将当前分支推送到远程仓库?(无需显式指定分支名称)
git push origin

告诉我:
fatal: The current branch 293-error-pages has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin 293-error-pages

第二个命令做你想要的事情了吗? - evolutionxbox
@evolutionxbox:是的,它可以,但我不想明确指定当前分支名称。 - Eugen Konkov
1
好的。重复项已删除。 - evolutionxbox
3个回答

7

要将当前分支推送到远程,您应该设置/配置push.default为“current”

git config --global push.default current

push.default
定义了当没有显式给出refspec时,git push应该采取的操作。 current - 将当前分支推送到接收端同名分支以更新。适用于集中式和非集中式工作流。


我认为这不正确。push.default 配置了 git push 是推送所有分支还是只推送当前分支。 - jwg
1
@jwg:是的,这是正确的。因为问题是:“如何将当前分支推送到远程?”对于命令“git push origin”,未明确给出“refspec”。因此,当我为“push.default”配置选项指定“current”值时,我会推送当前分支。那个OP想要什么。 - Eugen Konkov
你是对的,抱歉。如果你编辑了答案,我会投赞成票(否则我的投票将被锁定)。 - jwg
1
谢谢!再次抱歉犯错了! - jwg

1

0

另一种解决方案:

git push <remotename> <localcommit>:<remotebranch>

这将把 <localcommit> 推送到 <remotebranch> 或在服务器 <remotename> 上创建它


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