我建立了一个本地分支,但愿向上游“推送”。 关于堆栈溢出,这里有一个相似的问题,即如何跟踪新建立的远程分支。 html
可是,个人工做流程略有不一样。 首先,我想建立一个本地分支,而且只有在我满意并但愿共享个人分支时,才将其推向上游。 linux
更新使用Git 2.0,我在下面编写了一个更简单的答案 : https : //stackoverflow.com/a/27185855/109305 git
首先,您在本地建立分支: 浏览器
git checkout -b <branch-name> # Create a new branch and check it out
将远程分支推送到远程服务器时,将自动建立该分支。 所以,当您准备就绪时,能够执行如下操做: 服务器
git push <remote-name> <branch-name>
其中<remote-name>
一般是origin
,git给您从中克隆的远程名称。 而后,您的同事只需拉该分支,它就会在本地自动建立。 spa
可是请注意,正式的格式是: code
git push <remote-name> <local-branch-name>:<remote-branch-name>
可是,当您省略一个时,它将假定两个分支名称都相同。 话虽这么说, 请注意 ,不要犯仅指定:<remote-branch-name>
(带冒号)的严重错误,不然远程分支将被删除! htm
为了使后续的git pull
知道该怎么作,您可能要使用: blog
git push --set-upstream <remote-name> <local-branch-name>
以下所述, --set-upstream
set --set-upstream
选项设置上游分支: ip
对于每一个最新的或成功推送的分支,添加上游(跟踪)引用,该引用由无参数的git-pull(1)和其余命令使用。
这是经过Egit在Eclipse中进行操做的方法。
1)进入“ Git Repository Exploring”视图,并展开要建立分支的git项目。 在Brances-> Local ..下,选择要为其建立分支的分支(在本例中,我选择master ..若是愿意,能够选择其余分支)..而后右键单击并单击Create Branch选项。并选择检出此项目选项,而后单击完成按钮。
2)如今,从项目浏览器中选择项目..右键单击,而后单击“团队->推送分支”。
将建立一个新的远程分支。 您能够将分支的名称提供给您的同事,以便他们能够拉。
根据当前分支在本地建立一个新分支:
git checkout -b newbranch
像往常同样进行任何更改。 而后,将其推向上游:
git push -u origin HEAD
这是一种快捷方式,可将当前分支推送到origin
上具备相同名称的分支并对其进行跟踪,以便未来无需指定origin HEAD
。
git push -u <remote-name> <branch-name>
若是新建立的分支不是从同一git checkout -b new_branch
,则git checkout -b new_branch
,即,若是您还没有使用git checkout -b new_branch
建立新分支,则这是行不通的。
例如,我在本地克隆了两个不一样的存储库,而后不得不将repo2 / branch1复制到repo1 /,而后再将其推送。
此连接帮助我将本地分支(从另外一个存储库克隆)推到远程存储库:
我知道这个问题已经获得很好的回答,可是只想列出建立新分支“ myNewBranch”并推送到远程(在个人状况下为“ origin”)并设置跟踪过程当中所采起的步骤。 将此视为“ TL; DR”版本:)
# create new branch and checkout that branch git checkout -b myNewBranch # now push branch to remote git push origin myNewBranch # set up the new branch to track remote branch from origin git branch --set-upstream-to=origin/myNewBranch myNewBranch