为什么我不能推动我的新分支?

fre*_*ley 10 git github git-branch

我做了一个新的分支,检查出来并提交了一个提交:

git branch my-branch [HASH]
git checkout my-branch
git commit -am "Add some stuff to my new branch"
Run Code Online (Sandbox Code Playgroud)

但是,我不能把它推到github.git push origin my-branch收益:

error: src refspec branch does not match any.
error: failed to push some refs to 'https://github.com/Me/my-project.git'
Run Code Online (Sandbox Code Playgroud)

git show-refs 看起来像这样:

[HASH] refs/heads/my-branch
[HASH] refs/heads/master
[HASH] refs/heads/some-branch
[HASH] refs/remotes/origin/master
[HASH] refs/remotes/origin/some-branch
[HASH] refs/stash
Run Code Online (Sandbox Code Playgroud)

我需要做什么?

Mar*_*lev 11

下面是您要执行的命令,用于将所有更改从本地分支("my-branch")推送到GitHub存储库上的"my-branch"分支:

git push -u origin my-branch
Run Code Online (Sandbox Code Playgroud)


Pet*_*oes 5

分支在github上不存在,当您推送git时会检查分支的原始引用,但找不到它。

将分支添加为远程分支:

git 1.8.x

git branch -u origin/my-branch my-branch
Run Code Online (Sandbox Code Playgroud)

git 1.7.x

git branch --set-upstream my-branch origin/my-branch
Run Code Online (Sandbox Code Playgroud)

现在您可以推动了。


Qwe*_*rty 5

如果您厌倦了编写分支名称,请使用这个简洁的速记命令。

git push origin HEAD -u
Run Code Online (Sandbox Code Playgroud)

这基本上是说:将我当前所在的任何分支推送到原点并将其设置为上游(远程跟踪分支)。