Git: which is the default configured remote for branch?
For the sake of completeness: the previous answers tell how to set the upstream branch, but not how to see it.
There are a few ways to do this:
git branch -vv
shows that info for all branches. (formatted in blue in most terminals)
cat .git/config
shows this also.
For reference:
- how do I get git to show me which branches are tracking what?
- What is this branch tracking (if anything) in git?
You can do it more simply, guaranteeing that your .gitconfig
is left in a meaningful state:
Using Git version v1.8.0 and above
git push -u hub master
when pushing, or:git branch -u hub/master
OR
(This will set the remote for the currently checked-out branch to hub/master
)git branch --set-upstream-to hub/master
OR
(This will set the remote for the branch named branch_name
to hub/master
)git branch branch_name --set-upstream-to hub/master
If you're using v1.7.x
or earlier
you must use --set-upstream
:git branch --set-upstream master hub/master
Track the remote branch
You can specify the default remote repository for pushing and pulling using git-branch’s track option. You’d normally do this by specifying the --track option when creating your local master branch, but as it already exists we’ll just update the config manually like so:
Edit your .git/config
[branch "master"]
remote = origin
merge = refs/heads/master
Now you can simply git push and git pull.
[source]