我已经有一个本地主分支跟踪一个github项目的远程主分支。现在,我的一个合作者在同一个项目中创建了一个新的分支,我想相应地做以下工作:

在本地创建一个新分支 使这个新分支跟踪新创建的远程分支。

我该怎么做呢?


当前回答

当分支不是远程分支时,您可以将本地分支直接推到远程分支。

git checkout master
git push origin master

或者当你拥有一个开发分支时

git checkout dev
git push origin dev

或者当远程分支存在时

git branch dev -t origin/dev

还有一些其他的可能性来推动远程分支。

其他回答

当分支不是远程分支时,您可以将本地分支直接推到远程分支。

git checkout master
git push origin master

或者当你拥有一个开发分支时

git checkout dev
git push origin dev

或者当远程分支存在时

git branch dev -t origin/dev

还有一些其他的可能性来推动远程分支。

我总是这样用:

git fetch

然后:

git checkout -b branchName origin/branchName

如果你没有现有的本地分支机构,它真的很简单:

git fetch
git checkout <remote-branch-name>

例如,如果你获取并有一个新的远程跟踪分支称为origin/feature/Main_Page,只需这样做:

git checkout feature/Main_Page

这将创建一个与远程分支同名的本地分支,并跟踪该远程分支。如果你有多个具有相同分支名称的远程,你可以使用不那么模糊的:

git checkout -t <remote>/<remote-branch-name>

如果您已经创建了本地分支,但不想删除它,请参阅如何使现有Git分支跟踪远程分支。

git fetch
git branch --track branch-name origin/branch-name

第一个命令确保在本地存储库中有远程分支。第二个命令创建跟踪远程分支的本地分支。它假设您的远程名称是origin,分支名称是branch-name。

——track选项在默认情况下为远程分支启用,您可以忽略它。

首先,你必须获取远程存储库:

git fetch remoteName

然后你可以创建一个新的分支,并设置它来跟踪你想要的远程分支:

git checkout -b newLocalBranch remoteName/remoteBranch

你也可以使用"git branch——track"而不是"git checkout -b"作为max的指定值。

git branch --track newLocalBranch remoteName/remoteBranch