Próbowałem poszukać specjalnego polecenia Git, ale nie mogłem go znaleźć. Czy jest coś krótszego lub szybszego niż poniższe?
git branch | awk '/\*/ { print $2; }'
git
branch
git-branch
Ollie Saunders
źródło
źródło
Odpowiedzi:
Powinno to działać z Git 1.6.3 lub nowszym.
źródło
HEAD
, nie oczekujemaster
W Git 1.8.1 możesz użyć polecenia git symbolic-ref z opcją „--short”:
źródło
fatal: ref HEAD is not a symbolic ref
Występuje błąd podczas uruchamiania tego w ramach kompilacjiZ Git 2.22 (Q2 2019), trzeba będzie prostsze podejście:
git branch --show-current
.Zobacz commit 0ecb1fc (25 października 2018) autor: Daniels Umanovskis (
umanovskis
) .(Połączone przez Junio C Hamano -
gitster
- w commit 3710f60 , 07 marca 2019)źródło
Możesz być zainteresowany produkcją
W szczególności, w zależności od potrzeb i układu, które możesz chcieć zrobić
lub
i znowu jest
.git/HEAD
plik, który może Cię również zainteresować.źródło
git rev-parse --symbolic-full-name
dogit symbolic-ref
.basename
lubcut
; useBR=${BR#refs/heads/}
(gdzie BR jest nazwą zmiennej, z której zapisałeś dane wyjściowegit symbolic-ref HEAD
).git symbolic-ref --short HEAD
też zrobićZ tego, co mogę powiedzieć, nie ma sposobu, aby natywnie pokazać tylko bieżącą gałąź w Git, więc używałem:
źródło
grep '*'
jest nominalnie błędem składni. Prawdopodobnie igit branch | sed -n 's/^\* //p'
tak chcesz . A właściwie to, co opublikował PO, co oznacza to samo.grep '*'
nominalnie jest to błąd składniowy?'*'
to wyrażenie regularne i jako takie jest nieprawidłowe. Prawdopodobnie chcesz użyć'[*]'
(czyli znak*
zamiast operatora „zero lub więcej razy”).grep '\*'
git branch | grep "*" | cut -d' ' -f2
Myślę, że powinno to być szybkie i może być używane z API Pythona:
źródło
używam
Przyszedł z Git i zawiera monit z nazwą gałęzi i uzupełnieniem argumentów.
źródło
$ source /etc//bash_completion.d/git-prompt
nazwa pliku może być różna w różnych systemach. (Uwaga:source
słowo kluczowe jest takie samo jak po prostu.
(kropka) w bash.)Nie jest to krótsze, ale dotyczy również odłączonych gałęzi:
źródło
Dla pełności,
echo $(__git_ps1)
przynajmniej w Linuksie, powinien podać nazwę bieżącej gałęzi otoczoną nawiasami.Może to być przydatne w niektórych scenariuszach, ponieważ nie jest to polecenie Git (w zależności od Git), w szczególności do skonfigurowania wiersza polecenia Bash do wyświetlania bieżącej gałęzi .
Na przykład:
źródło
Ktoś może uznać to ( ) za pomocne. Bieżąca gałąź jest oznaczona *.
git show-branch
--current
źródło