我已经有一个本地主分支跟踪github项目的远程主分支。现在,我的一个合作者在同一个项目中创建了一个新的分支,我想做相应的事情:
我该怎么做呢?
答案 0 :(得分:227)
git fetch
git branch --track branch-name origin/branch-name
第一个命令确保您在本地存储库中具有远程分支。第二个命令创建跟踪远程分支的本地分支。它假定您的远程名称为origin
,分支名称为branch-name
。
--track
选项默认为远程分支启用,您可以省略它。
答案 1 :(得分:28)
首先,您必须获取远程存储库:
git fetch remoteName
您可以创建新分支并将其设置为跟踪所需的远程分支:
git checkout -b newLocalBranch remoteName/remoteBranch
你也可以使用“git branch --track”而不是“git checkout -b”作为最大指定。
git branch --track newLocalBranch remoteName/remoteBranch
答案 2 :(得分:28)
如果您没有现有的本地分支,那么它真的很简单:
git fetch
git checkout <remote-branch-name>
例如,如果您获取并且有一个名为origin/feature/Main_Page
的新远程跟踪分支,请执行以下操作:
git checkout feature/Main_Page
这将创建一个与远程分支同名的本地分支,跟踪该远程分支。如果您有多个具有相同分支名称的遥控器,则可以使用不那么模糊:
git checkout -t <remote>/<remote-branch-name>
如果您已经创建了本地分支机构并且不想删除它,请参阅How do you make an existing Git branch track a remote branch?。
答案 3 :(得分:7)
当分支不是远程分支时,您可以将本地分支直接推送到远程分支。
git checkout master
git push origin master
或当你有一个开发分支
git checkout dev
git push origin dev
或远程分支存在时
git branch dev -t origin/dev
还有一些其他的posibilites推动远程分支。