GitHub'推送分支到服务器'按钮做了什么?

时间:2013-10-29 22:34:45

标签: github

我拉下了我们的一个GitHub存储库的主分支(没有分叉)并从命令行分支,做了一些工作,添加了+提交然后重新设置了主。

当我从命令行调用git push时,我收到一条消息,指出The current branch has no upstream branch. To push the current branch and set the remote as upstream, use git push --set-upstream origin my_branch.

好吧,我在那里看到了'起源'的提及,并且有点担心这会以某种方式将我的变化推向主人而不是my_branch。我是GitHub的新手并且认为我应该安全地玩它。

相反,我打开了Windows客户端的GitHub,在那里找到了我的分支,然后点击了“push branch to server”按钮。 (至少我认为这就是它所说的。)罗,看哪,它奏效了。

点击该按钮在幕后做了什么,所以我知道下次要运行哪些命令?

2 个答案:

答案 0 :(得分:1)

它基本上做了:

git checkout my_branch
git push origin my_branch

如果你这样做

git push --set-upstream origin my_branch

每当你进入分支机构时,你需要做的就是运行:

git push

它将自动转到Github上的my_branch分支。

答案 1 :(得分:1)

可能类似于提到的命令 - git push origin my_branch

消息The current branch has no upstream branch.表示Git找不到与新创建的分支关联的远程分支(这是有意义的,远程存储库中没有这样的分支)。

git push --set-upstream origin my_branch表示“获取本地my_branch,在原点找到my_branch并在那里上传更改。还将origin / my_branch设置为my_branch中git push的默认分支”。因此,下次检查my_branch时,只需git push,并将更改上传到相应的远程分支。

man git push有一些好的和示范性的例子(以及其他git命令)。