2016-04-07 7 views
0

Angesichts der folgenden Zweige, ich habe versucht, mit git diff mybranch remotes/origin/mybranch zu vergleichen, aber es zeigt eine leere diff, obwohl ich weiß, dass es Änderungen gibt.Wie kann ich einen lokalen Git-Zweig mit einem Remote-Git-Zweig mit diesem Setup vergleichen?

Die Zweige zurück von git branch -a:

master 
* mybranch 
    remotes/origin/HEAD - > origin/master 
    remotes/origin/master 
    remotes/origin/mybranch 

Was der Befehl sein sollte? Muss ich zuerst holen? (Und wenn ja, kann ich einen Abruf rückgängig machen?)

+2

Fetch wird nichts lokal zusammenführen, also führen Sie das zuerst aus, wenn Sie überzeugt sind, dass Sie nicht mehr mit der Fernbedienung synchronisiert sind. – Makoto

Antwort

3

remotes/origin/mybranch ist eine lokale Kopie der Remote-Zweigstelle. Wenn Sie die neuesten Änderungen benötigen, die Sie abrufen müssen. Ein Abruf wird nicht Ihre lokalen Zweige ändern, nur die Remote-Zweige in Ihrem lokalen Repository, so dass es nicht notwendig sein sollte, den Abruf rückgängig zu machen.

Wenn Sie wirklich den Abruf rückgängig machen müssen, können Sie es einfach mit einem reset und dem Reflog der Remote-Zweigstelle tun.

0

Ohne eine fetch zu tun, wird Ihr Computer den Inhalt der Remote-Niederlassung nicht kennen.

git fetch werden alle Commits von der entfernten Zweig auf Ihren Computer bringen, sondern weil alle Commits jeweils eine eigene eindeutige Kennungen haben, werden Sie immer in der Lage sein zu rückgängig machen die durch die Verwendung checkout holen.

Verwandte Themen