如何建立远程Git分支?

我建立了一个本地分支,但愿向上游“推送”。 关于堆栈溢出,这里有一个相似的问题,即如何跟踪新建立的远程分支。 html

可是,个人工做流程略有不一样。 首先,我想建立一个本地分支,而且只有在我满意并但愿共享个人分支时,才将其推向上游。 linux

  • 我该怎么作? (个人谷歌搜索彷佛没有提出任何东西)。
  • 我如何告诉个人同事将其从上游存储库中提取?

更新使用Git 2.0,我在下面编写了一个更简单的答案https : //stackoverflow.com/a/27185855/109305 git


#1楼

首先,您在本地建立分支: 浏览器

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)和其余命令使用。


#2楼

这是经过Egit在Eclipse中进行操做的方法。

1)进入“ Git Repository Exploring”视图,并展开要建立分支的git项目。 在Brances-> Local ..下,选择要为其建立分支的分支(在本例中,我选择master ..若是愿意,能够选择其余分支)..而后右键单击并单击Create Branch选项。并选择检出此项目选项,而后单击完成按钮。

2)如今,从项目浏览器中选择项目..右键单击,而后单击“团队->推送分支”。

将建立一个新的远程分支。 您能够将分支的名称提供给您的同事,以便他们能够拉。


#3楼

根据当前分支在本地建立一个新分支:

git checkout -b newbranch

像往常同样进行任何更改。 而后,将其推向上游:

git push -u origin HEAD

这是一种快捷方式,可将当前分支推送到origin上具备相同名称的分支并对其进行跟踪,以便未来无需指定origin HEAD


#4楼

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 /,而后再将其推送。

连接帮助我将本地分支(从另外一个存储库克隆)推到远程存储库:


#5楼

我知道这个问题已经获得很好的回答,可是只想列出建立新分支“ 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
相关文章
相关标签/搜索