tags:

views:

36

answers:

2

Hello.I have the repository on github. It contains master and one branch. When I clone, I obtain only master and do not see my branch. Why is it so? How can I see all branches in the repository?

Thanks.

A: 

Use:

git branch -r

This will show you all remote branches. You can then do:

git branch -t my_local_branch origin/remote_branch
git checkout my_local_branch

Then do your work and then push to the remote branch.

Gonzalo
+2  A: 

By default, git clone creates only one branch: the currently checked out one, generally master. However, it does create remote tracking branches for all other branches in the remote. Think of these as local copies of the remote's branches, which can be updated by fetching. They're not real local branches, as they're intended only as pointers to where the remote's branches are, not for you to work on.

If you run git branch -a you'll all branches, local and remote. If you want to see just the remote ones, use git branch -r. If you prefer a visual history display, try gitk --all (or gitk --remotes).

To create a local branch to work on, use git branch <branch-name> origin/<branch-name>. That'll create a new local branch using the remote's branch as the starting point.

Jefromi
a shorter syntax that's supported is git branch -t origin/<branch-name>
adymitruk