2009-07-24 7 views
5

Ich benutze den Befehl git status, um herauszufinden, was ich lokal in meinem git-Arbeitsverzeichnis geändert habe. Aber gibt es ein "Gegenteil" dieses Befehls?gegenüber dem Befehl 'git status'

Was ich meine ist, möchte ich herausfinden, was andere in meinem Remote/Tracking-Zweig eingecheckt haben (ich bin nicht sicher, ob Remote-Zweig ist gleich Tracking-Zweig, in Git), aber diese Änderungen sind nicht hier in meinem Arbeitsverzeichnis

+2

Mein erster Gedanke war, helfen kann „Sie * weniger wissen wollen * über Ihre Branche? Kiffen oder etwas versuchen ...“ –

Antwort

10

Wie in der Frage erwähnten "How to get the changes on a branch in git"

git log HEAD..branch 

könnte sein, was Sie hier suchen.

 x---y---z---branch 
     /
---a---b---c---d---e---HEAD 

Es würde x, y, z zurückgeben. Hinweis: nur zwei Punkte, nicht drei hier: HEAD..branch.

Wie in dieser anderen Frage erwähnt:

Dies ist identisch mit git log branch --not HEAD, und bedeutet „alle auf dem Zweig verpflichtet, die nicht auf HEAD sind“

Hinweis: benötigen Sie einen git fetch ersten , um Ihre lokale Kopie einer entfernten Niederlassung zu aktualisieren. Ohne das würden Sie keine neue Änderung in der Remote-Verzweigung auswählen.


Hinweis: a tracking branch ist eine lokale Niederlassung, die an einem entfernten Zweig verbunden ist. Wenn Sie diesen Zweig drücken und an ihm ziehen, wird automatisch an den entfernten Zweig, mit dem er verbunden ist, gedrückt.

Wenn Sie ein Repository klonen, erstellt Git nur einen Zweig, der dem Master der Gegenstelle entspricht. Für jeden anderen Zweig, der an der entfernten Stelle existiert, an der Sie lokal arbeiten möchten, müssen Sie eine lokale Verzweigung erstellen, um die entfernte Verzweigung zu verfolgen.

könnte ein Patch (für die patch proposition Juni 2009) in der Herstellung sein, die 'tracking' Option, mit (dies ist keine definitive Beschreibung, aber immer noch ein work in progress)

zu git remote Befehl hinzufügen
git remote tracking <remote> <remote branch> 

würde alle lokalen Niederlassungen zeigen, dass <remote branch> verfolgen und haben <remote> als Standard entfernt, während

git remote tracking <local branch> 

würde zeigen <remote> und <remote branch> wenn <local branch> folgt Fernverfolgung Zweig.

Ich sehe diese Funktion in der upcoming Git1.6.4 obwohl.

0

Es scheint, dass Sie nach dem Befehl "git log" suchen.Besuche die Manpage here

this Frage in SO auch

Verwandte Themen