Earlier, we said that Git maintains copies of the branches in the upstream repo, as well as manages your local branches. You can see all these branches with ‘git branch -a’:
$ git branch -a -| gawk-4.1-stable -| * master -| remotes/origin/HEAD -> origin/master -| remotes/origin/dead-branches/async-events -| … -| remotes/origin/feature/api-mpfr -| remotes/origin/feature/array-iface -| remotes/origin/feature/fix-comments -| …
You’ll note that what we’ve referred to as ‘origin/’ branches
appear in the output with an additional prefix: ‘remotes/’.
Up to this point, we’ve treated Git as if it allowed only a single
upstream repository. But in fact, you can configure it to use more
than one. All the known upstream repositories are grouped under
the ‘remotes/’ prefix, with
remotes/origin being the one
from which you initially cloned your local repository.
The ability to work with multiple upstream repositories is an
gawk development does not make use of it.
The intent of this subsection is to explain the output
from ‘git branch -a’, nothing more.