Odpowiedzi:
Po prostu git branch
bez opcji.
Z strony podręcznika:
Bez argumentów, istniejące gałęzie są wymienione, a bieżąca gałąź zostanie podświetlona gwiazdką.
tylko proste polecenie
git branch
git branch -a
- Wszystkie oddziały.
git branch -r
- Tylko zdalne oddziały.
git branch -l
lub git branch
- Tylko oddziały lokalne .
-l
podpórek --local
, podczas gdy w rzeczywistości --list
. Sugerowałbym usunięcie go, aby uniknąć tego zamieszania - technicznie wszystkie polecenia w tej odpowiedzi mogłyby się przydać -l
i nadal zwracałyby te same wyniki.
Jeśli wiodąca gwiazdka stanowi problem, potokuję git branch
następująco
git branch | awk -F ' +' '! /\(no branch\)/ {print $2}'
Eliminuje to również linię „(bez gałęzi)”, która pojawia się po odłączeniu głowy.
git branch | awk -F ' +' '$2 !~ /detached/ {print $2}'
wersji git 1.9.1.
cut -c 3-
jest łatwiejszą opcją
Jednym z najprostszych sposobów na zrobienie tego jest
git for-each-ref --format='%(refname:short)' refs/heads/
Działa to doskonale również w przypadku skryptów.
Oto jak wyświetlić listę oddziałów lokalnych, które nie mają źródła zdalnego o tej samej nazwie:
git branch | sed 's|* | |' | sort > local
git branch -r | sed 's|origin/||' | sort > remote
comm -23 local remote
comm -23 <(git branch | sed 's|* | |' | sort) <(git branch -r | sed 's|origin/||' | sort )
Innym sposobem uzyskania listy tylko oddział lokalny jest:
git branch -a | grep -v 'remotes'
Istnieje świetna odpowiedź na post dotyczący usuwania lokalnych oddziałów. W nim kolega buduje polecenie, aby wyświetlić listę lokalnych oddziałów:
git branch -vv | cut -c 3- | awk '$3 !~/\[/ { print $1 }'
Odpowiedź ma świetne wyjaśnienie na temat tego, jak to polecenie zostało wyprowadzone, więc sugeruję, abyś przeczytał ten post.
Aby uzupełnić odpowiedź @ gertvdijk - dodaję kilka zrzutów ekranu na wypadek, gdyby to pomogło komuś szybko.
Na mojej powłoce git bash
oddział git
polecenie bez żadnych parametrów pokazuje wszystkie moje lokalne oddziały. Obecna gałąź, która jest obecnie wyewidencjonowana, jest wyświetlana w innym kolorze (zielonym) wraz z gwiazdką (*), który jest naprawdę intuicyjny.
Gdy próbujesz zobaczyć wszystkie gałęzie, w tym gałęzie zdalne, używając
gałąź git -a
polecenie, a następnie zdalne gałęzie, które nie zostały jeszcze wypisane, są wyświetlane w kolorze czerwonym: