Wyświetlanie niewypowiedzianych poleceń Gita


1752

Jak mogę wyświetlić wszelkie zatwierdzenia lokalne, które nie zostały jeszcze wypchnięte do zdalnego repozytorium? Czasami git statuswydrukuje, że moja gałąź to X origin/master, ale nie zawsze.

Czy to błąd w mojej instalacji Git, czy coś mi brakuje?


18
Począwszy od Git 2.5+ (drugi kwartał 2015 r.), Rzeczywista odpowiedź brzmiałaby git log @{push}... Zobacz ten nowy skrót @{push}(odnoszący się do gałęzi zdalnego śledzenia, do którego naciskasz) w mojej odpowiedzi poniżej
— VonC

59
@Torek - kolejne proste zadanie utrudnione przez Git. Za każdym razem, gdy pojawia się pytanie Gita z setkami lub tysiącami głosów pozytywnych i milionami wyświetleń, ktoś powinien pomyśleć: Wow, naprawdę spieprzyliśmy ten przepływ pracy. Niestety, deweloperzy Git pominęli etap sprzężenia zwrotnego w cyklu rozwojowym, więc sprzężenie zwrotne nie zostało uwzględnione. Zamiast tego ciągle popełniają te same błędy. Na to pytanie git status --allpowinno się pojawić w 2010 r .; lub git status -vpowinien faktycznie zapewniać pełne dane wyjściowe, które zawierają dodatkowe informacje.
— jww

4
Nie zgadzam się z tym, że „git status -v” powinien podawać te informacje, ponieważ ma on na celu nadanie statusu działającego drzewa, ponieważ odnosi się ono tylko do pobranej gałęzi. Zobacz jednak odpowiedź na temat „gałęzi git -v”, która moim zdaniem powinna być przyjętą odpowiedzią
— JoelFan

13
To konkretne pytanie StackOverflow ma największą liczbę poprawnych odpowiedzi, które wszystkie działają, ale nie mają żadnego sensu.
— Pete Alvin,

@ josh-buhler Przepraszam, przypadkowo obniżyłem głos ... podczas próby kliknięcia „GWIAZDY”. Próbowałem ponownie głosować, ale nie zadziałało!
— RafiAlhamd

Odpowiedzi:


1827
git log origin/master..HEAD

Możesz także wyświetlić różnicę przy użyciu tej samej składni

git diff origin/master..HEAD

3
Zrobiło to dla mnie - z jakiegoś powodu git log origin .. sam z siebie zgłaszał błąd. Wygląda na to, że miałem również problem ze sposobem skonfigurowania mojego lokalnego oddziału - po wprowadzeniu zmian znalazłem tutaj: wincent.com/blog/…… problem został rozwiązany i mogłem ponownie użyć statusu git, aby zobaczyć, co chciałem .
— Josh Buhler

6
Nieocenione: tak bardzo, że zrobiłem git config --global alias.ahead "log origin/master..HEAD --oneline", że mogę szybko dowiedzieć się, gdzie jestem. Jeszcze więcej cukierków:for i in *; do echo $i && git ahead 2>/dev/null; done
— Jamie

15
git log --stat origin/master..HEADza odrobinę dodatkowej niesamowitości
— Cory Danielson

141
To nie jest najlepsze rozwiązanie. Pochodzenie / master nie zawsze może być odgałęzieniem. Lepszym rozwiązaniem jest użycie @ {u} zamiast „origin / master” do wskazania gałęzi upstream. Ponieważ HEAD jest domyślnie domyślny, można to również pominąć. Zobacz odpowiedź @ Ben Linga. Zmiany wychodzące: git log @ {u} .. Zmiany przychodzące: git log .. @ {u}
— PlagueHammer

12
@Nocturne Chcę tylko zaznaczyć, że kiedy ta odpowiedź została opublikowana, @{u}składnia nie była jeszcze dostępna, stała się dostępna dopiero 12 lutego 2010 r . Również @{u}nie będzie działać, jeśli lokalny oddział nie jest skonfigurowany z nadrzędnym. Wreszcie, @{u}obecnie nie obsługuje uzupełniania tabulatorów, <remote>/<branch>a uzupełnianie tabulatorów pozostaje jednym z najszybszych sposobów na uzyskanie tych informacji i zadziała niezależnie od tego, czy skonfigurowano upstream.

703

Jeśli chcesz zobaczyć wszystkie zatwierdzenia we wszystkich gałęziach, które nie zostały jeszcze wypchnięte, być może szukasz czegoś takiego:

git log --branches --not --remotes

A jeśli chcesz zobaczyć tylko najnowsze zatwierdzenie dla każdej gałęzi i nazwy gałęzi, to:

git log --branches --not --remotes --simplify-by-decoration --decorate --oneline

8
To jest niesamowite. W pokrewnym scenariuszu miałem dwa oddziały lokalne z dwoma odgałęzieniami wyższego szczebla, a jedna ręka lokalna została połączona z drugą. Chciałem wiedzieć, które zatwierdzenia były bezpieczne, ale normalne git log master..HEADnie zadziałało, ponieważ było wiele potoków. Ten post doprowadził mnie do git log MyBranch --not --remotespokazania wszystkich zatwierdzeń, które nie zostały wypchnięte do żadnego z poprzedniej części w jednym oddziale.
— pavon

To było tak przydatne, że aliasowałem to w mojej konfiguracji zsh. Dzięki.
— Scotty C.,

Rozumiem, że twoje drugie polecenie wyświetla również listę zatwierdzeń, które nie zostały jeszcze wypchnięte, tylko pokazuje tylko jedną na gałąź.
— Stephane

--decoratepokazuje również gałęzie. --graphczyni to jeszcze bardziej oczywistym.
— Ray

Zauważ, że te polecenia wyświetlają tylko zatwierdzenia, które nie zostały wypchnięte w żadnej gałęzi. Przykład: powiedzmy, że masz gałąź rozwoju z gałęzią feat-NewThing. Dokonujesz zmian lokalnie, aby feat-NewThing. (Dziennik ma zmiany.) Następnie wypychasz feat-newThing do jego zdalnej gałęzi. (Dziennik jest pusty). Łączysz lokalne feat-newThing, aby rozwijać się lokalnie. Zakładając szybkie przewijanie, dziennik nadal nie zawiera żadnych zmian.
— Patrick W

325

Możesz pokazać wszystkie zatwierdzenia, które masz lokalnie, ale nie w górę

git log @{u}..

@{u}lub @{upstream}oznacza odgałęzienie obecnego oddziału (patrz git rev-parse --helplub w git help revisionscelu uzyskania szczegółowych informacji).


17
W systemie Windows musiałem zawrzeć ostatni argument w cudzysłowach, na przykład: git log "@ {u} .."
— Jon Schneider

git log @{u}.. -p Jedną z najbardziej przydatnych opcji jest -p , która pokazuje różnice wprowadzone w każdym potwierdzeniu.
— mQuiroz,

Prawdopodobnie lepszy git log @ {push} .., zobacz inną odpowiedź .
— Hans-Peter Störr

183

21
Myślę, że to powinna być główna odpowiedź, ponieważ ta daje bardziej zwięzłą listę zatwierdzeń zamiast trudnej do odczytania pełnej różnicy we wszystkich plikach !!
— ViFI,

1
git-cherry - „Znajdź zatwierdzenia, które mają być zastosowane do wysyłania”, wydaje się zapewniać to, o co OP chciał, ale tylko z tematem zatwierdzenia, a nie całym komunikatem zatwierdzenia.
— Eido95

2
Warto zauważyć, że powie ci to tylko wtedy, gdy w gałęzi, którą aktualnie wypisałeś, są niepoprawne zatwierdzenia. Nie powie ci, czy masz oddział lokalny (obecnie nie wyewidencjonowany) z niepoprawnymi zatwierdzeniami.
— Dave Yarwood,

66

Możesz to zrobić za pomocą git log:

git log origin..

Zakładając, że originjest to nazwa twojego upstream, pomijając nazwę rewizji po ..implikuje HEAD, która zawiera listę nowych zatwierdzeń, które nie zostały wypchnięte.


1
Ilekroć widzę odpowiedź za pomocą git log„2 kropki-nie-3”, zawsze przypomina mi to stackoverflow.com/questions/53569/… ;)
— VonC

1
Wystarczy dodać go do odpowiedzi - jeśli nie ma konfiguracji w górę, to polecenie powoduje, że nie skonfigurowano w górę. Uruchom, git branch --set-upstream master origin/<branch>aby skonfigurować w górę, jeśli masz skłonność do używania tego polecenia, aby zobaczyć zatwierdzenia, które są przemieszczane.
— asyncwait

Porównamy to z domyślną gałęzią pochodzenia, a nie bieżącą gałęzią zdalną.
— greuze

43

Wszystkie pozostałe odpowiedzi mówią o „upstream” (gałęzi, z której pobierasz).
Ale lokalny oddział może przesunąć do innego oddziału, niż ten, który ciągnie od.

mastermoże nie przekazywać do zdalnego oddziału śledzenia „ origin/master”. Upstream oddział dla może być , ale może naciskać na pilocie zdalnego oddziału śledzenia lub nawet . Są one ustawione dla bieżącej gałęzi wraz z wartością.
masterorigin/masterorigin/xxxanotherUpstreamRepo/yyy
branch.*.pushremoteglobal remote.pushDefault

Jest to pilot zdalnego śledzenia oddział, który liczy się przy poszukiwaniu unpushed zobowiązuje: ten, który śledzi branch at the remotegdzie miejscowy oddział zostanie zepchnięte na. Może być znowu, albo nawet .
branch at the remoteorigin/xxxanotherUpstreamRepo/yyy

Git 2.5+ (drugi kwartał 2015 r.) Wprowadza do tego nowy skrót: <branch>@{push}

Zobacz popełnić 29bc885 , popełnić 3dbe9db , popełnić adfe5d0 , popełnić 48c5847 , popełnić a1ad0eb , popełnić e291c75 , popełnić 979cb24 , popełnić 1ca41a1 , popełnić 3a429d0 , popełnić a9f9f8c , popełnić 8770e6f , popełnić da66b27 , popełnić f052154 , popełnić 9e3751d , popełnić ee2499f [Wszystkie z 21 maja 2015] i zatwierdzenie e41bf35 [01 maja 2015] przez Jeffa Kinga ( peff) .
(Połączone przez Junio ​​C Hamano - gitster-w commit c4a8354 , 05 cze 2015)

Zatwierdź adfe5d0 wyjaśnia:

sha1_name: zaimplementuj @{push}skrót

W trójkątnym przepływie pracy każda gałąź może mieć dwa odrębne punkty zainteresowania: ten @{upstream}, z którego normalnie pobierasz, i miejsce docelowe, do którego zwykle pchasz. Ten ostatni nie jest skrótem, ale warto go mieć.

Na przykład możesz chcieć wiedzieć, które zobowiązania jeszcze nie zostały wypchnięte :

git log @{push}..

Lub jako bardziej skomplikowany przykład, wyobraź sobie, że zwykle pobierasz zmiany z origin/master(które ustawiasz jako swoje @{upstream}) i przesuwasz zmiany do własnego osobistego rozwidlenia (np. As myfork/topic).
Możesz naciskać na swój widelec z wielu maszyn, co wymaga zintegrowania zmian z miejsca docelowego push, a nie z góry .
Dzięki tej łatce możesz po prostu:

git rebase @{push}

zamiast wpisywać pełne imię i nazwisko.

Commit 29bc885 dodaje:

for-each-ref: zaakceptuj %(push)format „ ”

Tak jak mamy „ %(upstream)”, aby zgłosić „ @{upstream}” dla każdego odwołania, ta łatka dodaje „ %(push)”, aby dopasować „ @{push}”.
Obsługuje te same modyfikatory formatu śledzenia, co upstream (ponieważ możesz chcieć na przykład wiedzieć, które gałęzie zatwierdzają push ).

Jeśli chcesz zobaczyć, ile zatwierdzeń Twoje lokalne oddziały są do przodu / do tyłu w porównaniu z oddziałem, do którego naciskasz:

git for-each-ref --format="%(refname:short) %(push:track)" refs/heads

42

Przydatny alias git do wyszukiwania niepoprawnych commits w bieżącej gałęzi:

alias unpushed = !GIT_CURRENT_BRANCH=$(git name-rev --name-only HEAD) && git log origin/$GIT_CURRENT_BRANCH..$GIT_CURRENT_BRANCH --oneline

Co to w zasadzie robi:

git log origin/branch..branch

ale także określa bieżącą nazwę oddziału.


8
To jest niesamowite! Jeśli nie znasz aliasów, po prostu dodaj je do pliku ~ / .gitconfig w sekcji [alias].
— Gary Haran

1
Kopiowanie / wklejanie w bash nie działa, ale skrypt jest bardzo przydatny i zrozumiały
— greuze

To nie jest alias bash, jak wskazuje @GaryHaran. Istnieje także polecenie git do dodawania aliasów: git alias <alias-name> <command>W takim przypadku polecenie powinno być otoczone pojedynczymi cudzysłowami, aby uniknąć znaków specjalnych z powłoki.
— Dag Høidahl

4
To byłoby:git config --global alias.unpushed '!GIT_CURRENT_BRANCH=$(git name-rev --name-only HEAD) && git log origin/$GIT_CURRENT_BRANCH..$GIT_CURRENT_BRANCH --oneline'
— Ricky Levi

Wydaje się to w zasadzie takie samo jak git log @ {u} .. - zobacz inną odpowiedź .
— Hans-Peter Störr

35

Możesz spróbować....

gitk

Wiem, że nie jest to czysta opcja wiersza poleceń, ale jeśli masz ją zainstalowaną i korzystasz z systemu GUI, to świetny sposób, aby zobaczyć dokładnie to, czego szukasz, i wiele więcej.

(Tak naprawdę jestem zaskoczony, że nikt o tym nie wspominał.)


3
gitk --alldo przeglądania wszystkich gałęzi.
— Ray

3
tigjest alternatywą ncurses.
— Ray

@ justin-ohms gitkjest niesamowity! Nigdy nie wiedziałem, że to istnieje! Przydatne do przeglądania zmian w ładnym interfejsie użytkownika.
— RafiAlhamd

@ray tigjest najbardziej przydatny w sytuacji „tylko terminala” - gdy nie masz dostępu do graficznego interfejsu użytkownika. Dowiedz się o tym po raz pierwszy! CIEKAWE: tigjest ODWRÓCONY git!
— RafiAlhamd

30

git branch -v pokaże, dla każdego oddziału lokalnego, czy jest „przed”, czy nie.


2
Tak, w przypadku nieprzypisanego zatwierdzenia na gałęzi devel, odpowiednia linia będzie * devel 8a12fc0 [ahead 1] commit msg( *będzie tylko w linii odpowiadającej sprawdzonej gałęzi). ahead 1oznacza „z wyprzedzeniem o jeden zatwierdzenie”, tzn. istnieje jedno nieprzypisane zatwierdzenie.
— Aurelien,

2
Nie jest to git branch -vv? Por. docs: „Jeśli podano dwa razy, wypisz również nazwę gałęzi upstream (patrz także git remote show <remote>).”
— Dirty Henry

Nie chodzi tu o wypisanie nazwy gałęzi upstream, ale o wypisanie behindi / lub aheadkażdego oddziału lokalnego, co wystarczy, aby rozwiązać problem OP (wykrywanie niepoprawnych commits). git branch -vwystarczy do tego, właśnie przetestowałem ponownie z Git 2.16.2 :)
— Aurelien

Opcja -vv jest przydatna, ponieważ pokazuje różnicę między gałęziami, które są aktualne w pilocie, a tymi, które w ogóle nie zostały wypchnięte. (Tylko jedno -v pokazuje się identycznie na wyświetlaczu.)
— RM

30

Miałem wcześniej dokonane zatwierdzenie, nie wypychane do żadnej gałęzi, ani zdalnie, ani lokalnie. Tylko zatwierdzenie. Nic z innych odpowiedzi nie działało dla mnie, ale z:

git reflog

Tam znalazłem swoje zatwierdzenie.


Jak podano w tym linku git-scm.com/docs/git-reflog , dzienniki referencyjne lub „dzienniki rejestrów”, rejestruj, kiedy porady oddziałów i inne referencje zostały zaktualizowane w lokalnym repozytorium. W moim przypadku sklonowałem repozytorium, utworzyłem nową gałąź, usunąłem gałąź, utworzyłem nową, utworzyłem zatwierdzenie i zmieniłem zatwierdzenie. Wszystkie te kroki zostały zapisane jako HEAD @ {0}: zatwierdzenie (zmiana): .. HEAD @ {1}: zatwierdzenie: ... HEAD @ {2}: pobranie: przejście z ... do ... HEAD @ { 3}: wyrejestrowanie: przejście z ... do ... HEAD @ {4}: klon: z #sorry dla formatu SO najwyraźniej nie dopuszcza multilinii w komentarzach
— prędkość

dotyczy to również zatwierdzeń pochodzenia, najlepszym rozwiązaniem byłoby użycie polecenia udostępnionego przez @PlagueHammer ( stackoverflow.com/a/2016954/624048 )
— Lincoln

20

Używam następującego aliasu, aby uzyskać tylko listę plików (i status), które zostały zatwierdzone, ale nie zostały wypchnięte (dla bieżącej gałęzi)

git config --global alias.unpushed \
"diff origin/$(git name-rev --name-only HEAD)..HEAD --name-status"

następnie po prostu wykonaj:

git unpushed

wygląda interesująco, ale $ (git name-rev - HEAD tylko nazwa) jest w moim przypadku „niezdefiniowany”
— vak

13

Uważam, że najbardziej typowym sposobem na to jest uruchomienie czegoś takiego:

git cherry --abbrev=7 -v @{upstream}

Jednak osobiście wolę biegać:

git log --graph --decorate --pretty=oneline --abbrev-commit --all @{upstream}^..

który pokazuje zatwierdzenia ze wszystkich gałęzi, które nie są scalone w górę, plus ostatnie zatwierdzenie w górę (które pojawia się jako węzeł główny dla wszystkich pozostałych zatwierdzeń). Używam go tak często, że stworzyłem noupdla niego alias .

git config --global alias.noup \
'log --graph --decorate --pretty=oneline --abbrev-commit --all @{upstream}^..'

11

Sugeruję, abyś zobaczył skrypt https://github.com/badele/gitcheck , kodowałem ten skrypt do sprawdzenia w jednym przejściu wszystkich twoich repozytoriów git i pokazuje, kto się nie zobowiązał, a kto nie pchnął / nie wyciągnął.

Oto przykładowy wynik wprowadź opis zdjęcia tutaj


1
Czy możesz wyjaśnić, jak uruchomić tę wtyczkę na komputerze z systemem Windows? Próbuję uruchomić pip, ale w wierszu polecenia brakuje polecenia. Mam zainstalowany Python, ale nie jestem pewien, czy to wystarczy.
— Konrad Szałwiński

@ KonradSzałwiński Nie mam komputera z systemem Windows, ale w tym temacie ( stackoverflow.com/questions/4750806/… ) użytkownik wydaje się odpowiadać na twoje pytanie :). Ale nie testowałem w systemie Windows i nie jestem pewien, czy to zadziała.
— Bruno Adelé

@ KonradSzałwiński, współautor github ChristianTremblay dodał obsługę Windows. Teraz gitcheck działa w systemie Windows. Możesz pobrać go na github.com/badele/gitcheck
— Bruno Adelé

Teraz możesz także używać gitcheck bezpośrednio z kontenera dokowanego (z plikami w hoście) Aby uzyskać więcej informacji, zobacz projekt gitubck gitcheck
— Bruno Adelé

Dzięki za opublikowanie tego, wydaje się to bardzo przydatne. Próbowałem zainstalować, ale po instalacji nie mogę znaleźć lokalizacji skryptu, aby go uruchomić. $ pip install git + git: //github.com/badele/gitcheck.git Zbieranie git + git: //github.com/badele/gitcheck.git Klonowanie git: //github.com/badele/gitcheck.git do c : \ users \ u6041501 \ appdata \ local \ temp \ pip-bxt472z_-build Instalowanie zebranych pakietów: gitcheck Uruchamianie setup.py instalacji dla gitcheck: rozpoczęto Uruchamianie setup.py instalacji dla gitcheck: zakończone ze statusem „gotowe” Zainstalowano gitcheck-0.3 .22
— Lauren Fitch


9

To nie jest błąd. To, co prawdopodobnie widzisz, to status git po nieudanym automatycznym scaleniu, w którym zmiany z pilota są pobierane, ale jeszcze nie scalone.

Aby zobaczyć zatwierdzenia między lokalnym repo i zdalnym wykonaj następujące czynności:

git fetch

Jest to w 100% bezpieczne i nie będzie wyśmiewać kopii roboczej. Jeśli byłyby zmiany, git statuspokażą się X commits ahead of origin/master.

Możesz teraz wyświetlać dziennik zatwierdzeń, które są w trybie zdalnym, ale nie lokalnym:

git log HEAD..origin

8

To działało dla mnie lepiej:

git log --oneline @{upstream}..

lub:

git log --oneline origin/(remotebranch)..

2
Dla każdego, kto zastanawia się, @{upstream}jest dosłowny ( upstreamto magiczne słowo), a remotebranchto tylko nazwa twojej gałęzi.
— Steve Bennett,

7

Istnieje narzędzie o nazwie unpushed, które skanuje wszystkie repozytorium Git, Mercurial i Subversion w określonym katalogu roboczym i wyświetla listę niezatwierdzonych plików i nieprzypisanych zatwierdzeń. Instalacja jest prosta w systemie Linux:

$ easy_install --user unpushed

lub

$ sudo easy_install unpushed

zainstalować w całym systemie.

Użycie jest również proste:

$ unpushed ~/workspace
* /home/nailgun/workspace/unpushed uncommitted (Git)
* /home/nailgun/workspace/unpushed:master unpushed (Git)
* /home/nailgun/workspace/python:new-syntax unpushed (Git)

Zobacz unpushed --helplub oficjalny opis, aby uzyskać więcej informacji. Posiada również skrypt cronjob unpushed-notifydo powiadamiania na ekranie o niezalecanych i nieprzypisanych zmianach.


5

Aby łatwo wyświetlić listę wszystkich nieprzypisanych zmian we wszystkich gałęziach , możesz użyć tego polecenia:

 git log --branches  @{u}..

4

Podobne: Aby wyświetlić nie scalone gałęzie:

git branch --all --no-merged

Można podejrzewać, ale polecam odpowiedź cxreg


3

Jeśli liczba zatwierdzeń, które nie zostały wypchnięte, jest liczbą jednocyfrową, co często jest, najprostszym sposobem jest:

$ git checkout

git odpowiada informując cię, że jesteś „z wyprzedzeniem N zobowiązuje” względem swojego pochodzenia. Więc teraz pamiętaj o tej liczbie podczas przeglądania dzienników. Jeśli „wyprzedzasz o 3 zatwierdzenia”, 3 najważniejsze zatwierdzenia w historii są nadal prywatne.


2

Jednym ze sposobów robienia rzeczy jest lista zatwierdzeń, które są dostępne w jednym oddziale, ale nie w drugim.

git log ^origin/master master

Co robi znak „^”?
— Aran Mulholland

@AranMulholland oznacza nie tutaj.
— Alex

1

Jak powiedziano powyżej:

git diff origin / master..HEAD

Ale jeśli używasz git gui

Po otwarciu interfejsu GUI wybierz „Repozytorium” -> Pod tym „ Wizualizuj historię ”

Uwaga: Niektóre osoby lubią używać CMD Monit / Terminal, podczas gdy inne lubią używać Git GUI (dla uproszczenia)


opcja wizualizacji w git gui jest jedna.
— Rajesh Kolhapure

-2

Oto moje przenośne rozwiązanie (skrypt powłoki, który działa również w systemie Windows bez dodatkowej instalacji), który pokazuje różnice w pochodzeniu dla wszystkich gałęzi: git-fetch-log

Przykładowy wynik:

==== branch [behind 1]

> commit 652b883 (origin/branch)
| Author: BimbaLaszlo <bimbalaszlo@gmail.com>
| Date:   2016-03-10 09:11:11 +0100
|
|     Commit on remote
|
o commit 2304667 (branch)
  Author: BimbaLaszlo <bimbalaszlo@gmail.com>
  Date:   2015-08-28 13:21:13 +0200

      Commit on local

==== master [ahead 1]

< commit 280ccf8 (master)
| Author: BimbaLaszlo <bimbalaszlo@gmail.com>
| Date:   2016-03-25 21:42:55 +0100
|
|     Commit on local
|
o commit 2369465 (origin/master, origin/HEAD)
  Author: BimbaLaszlo <bimbalaszlo@gmail.com>
  Date:   2016-03-10 09:02:52 +0100

      Commit on remote

==== test [ahead 1, behind 1]

< commit 83a3161 (test)
| Author: BimbaLaszlo <bimbalaszlo@gmail.com>
| Date:   2016-03-25 22:50:00 +0100
|
|     Diverged from remote
|
| > commit 4aafec7 (origin/test)
|/  Author: BimbaLaszlo <bimbalaszlo@gmail.com>
|   Date:   2016-03-14 10:34:28 +0100
|
|       Pushed remote
|
o commit 0fccef3
  Author: BimbaLaszlo <bimbalaszlo@gmail.com>
  Date:   2015-09-03 10:33:39 +0200

      Last common commit

Parametry przekazane do dziennika, np. --onelineLub --patchmogą być użyte.


-3
git show

pokaże wszystkie różnice w twoich lokalnych zobowiązaniach.

git show --name-only

pokaże identyfikator lokalnego zatwierdzenia i nazwę zatwierdzenia.


3
git showpokazuje tylko ostatnie zatwierdzenie, bez względu na to, czy zostało ono wypchnięte do pilota, czy nie, nie pokaże wszystkich twoich nieprzypisanych zatwierdzeń.

-6
git diff origin

Zakładając, że twoja gałąź jest skonfigurowana do śledzenia pochodzenia, powinno to pokazać różnice.

git log origin

Daje ci podsumowanie zobowiązań.


3
git log originpokaże zatwierdzenia, które zostały już wypchnięte , ale nie pokażą zatwierdzeń, które nie zostały wypchnięte , co jest bardziej zgodne z tym, o co prosił oryginalny plakat.
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.