Git: Lista wszystkich niescalonych zmian w git

125

Tworząc gałąź dla różnych tematów i nie usuwając ich regularnie, gdy już ich nie potrzebuję, skończyło się na około 50 oddziałach;)

Próbowałem usunąć gałęzie i niektóre z nich nie są scalone.

To, czego chcę, to możliwość zobaczenia dokładnie, jakie zmiany są w dowolnej gałęzi mojego repozytorium, których nie ma w masterze. Czy jest na to sposób

Z góry dziękuję.

Lakshman Prasad
źródło

Odpowiedzi:

223

Aby wyświetlić gałęzie z zatwierdzeniami, które nie zostały scalone w master:

git branch --no-merged master

Aby wymienić odpowiednie zmiany:

git cherry -v master <branch>
gawi
źródło
6
"git branch --no-scaled master" nie pokazuje zdalnych gałęzi - wskazówki, aby je również zobaczyć?
Peter Toft
23
Dodaj -aflagę, aby uwzględnić zdalne gałęzie.
gawi
Jeśli daje błąd, spróbuj zastąpić mastergo originjako upstream.
CodeFarmer,
2
Zwróć uwagę, że gałęzie scalone metodą squash & merge nadal będą wykazywać różnice, nawet jeśli ich nie ma.
Michael Scott Cuthbert,
Dodanie -aparametru spowoduje wyświetlenie oddziałów lokalnych i zdalnych, a wraz z -rwyświetleniem tylko oddziałów zdalnych.
pafivi
26

Natknąłem się na to pytanie, próbując przypomnieć sobie składnię ...

git log <branch> --not master --stat

Spowoduje to wyświetlenie zatwierdzeń do <branch>, które nie zostały połączone z wzorcem. --Stat będzie uwzględniać pliki, które zostały zmienione za pomocą zatwierdzeń. Możesz również użyć tego do porównania dowolnych dwóch gałęzi, zastępując master z inną nazwą gałęzi.

Matt
źródło
-5

Za pomocą narzędzia można łatwo uzyskać przegląd swoich oddziałów gitk.

tamasd
źródło
11
Nie, jeśli masz> 20 oddziałów
Peter Toft