How to checkout a remote branch in Git?

Someone pushed a "new feature" branch to the shared repo:

git push -u new_feature_branch

Now, I would like to create a copy of this branch on my local machine in order to test the new feature.

What would be the easiest way to do this? (Do I need to fetch / pull before checkout ?)


I generally find it unnecessary to use git fetch . git pull is sufficient. git pull will synchronize your repository with the remote. The new_feature_branch will then be available.

git checkout new_feature_branch will notice the branch in origin and create a new local tracking branch for you and switch to that branch.

git pull
git checkout new_feature_branch

The simplest way to do this is:

git fetch
git checkout -t origin/new_feature_branch

This is only done initially. From now on you can continue working with the branch as you do for the others you use.


You need to fetch upstream changes so your local repository includes the relevant objects ( git fetch --all or git fetch <remote> ).

Afterwards you can perform a checkout using git checkout <branch> (if you like to do it explicitly, you can type git checkout -b <branch> <remote>/<branch> ; the local name doesn't have to be the same as the remote). If you don't already have a local branch of that name, it will checkout the remote branch and track it.

As an alternative to this, you can use git pull <remote> <branch> , but this will - with default settings - merge the remote branch into your current, which is probably not what you want.

链接地址: http://www.djcxy.com/p/3840.html

上一篇: 等同于“svn checkout”的git?

下一篇: 如何在Git中检出远程分支?