305 Stimmen

Wie prüft man auf Änderungen im entfernten (ursprünglichen) Git-Repository?

Wie lauten die Git-Befehle, um den folgenden Arbeitsablauf auszuführen?

Szenario

Ich habe von einem Repository geklont und einige eigene Übertragungen in mein lokales Repository vorgenommen. In der Zwischenzeit haben meine Kollegen Commits an das Remote-Repository vorgenommen. Jetzt möchte ich das:

  1. Prüfen Sie, ob es irgendwelche neuen Commits von anderen Personen im entfernten Repository gibt, d.h. origin ?

  2. Angenommen, es gab drei neue Commits auf der entfernten Repository seit meinem letzten Pull, würde ich gerne die entfernten Repositorys vergleichen, d.h. HEAD~3 avec HEAD~2 , HEAD~2 avec HEAD~1 y HEAD~1 avec HEAD .

  3. Nachdem ich weiß, was sich aus der Ferne verändert hat, möchte ich die neuesten Übertragungen von den anderen erhalten.

Meine bisherigen Erkenntnisse

Für Schritt 2: Ich kenne die Caret-Schreibweise HEAD^ , HEAD^^ usw. und die Tilde-Schreibweise HEAD~2 , HEAD~3 , usw.

Zu Schritt 3: Das ist, denke ich, nur eine git pull .

299voto

Alan Haggai Alavi Punkte 69510

Sie könnten git fetch origin um den entfernten Zweig in Ihrem Repository zu aktualisieren und auf die neueste Version zu verweisen. Für einen Vergleich mit der entfernten Version:

git diff origin/master

Ja, Sie können auch die Caret-Schreibweise verwenden.

Wenn Sie die Änderungen aus der Ferne akzeptieren möchten:

git merge origin/master

178voto

Rajani Karuturi Punkte 3315
git remote update && git status 

Gefunden auf der réponse à Prüfen, ob ein Pull in Git erforderlich ist

git remote update um Ihre Remote-Referenten auf den neuesten Stand zu bringen. Dann können Sie mehrere Dinge tun, wie zum Beispiel:

  1. git status -uno sagt Ihnen, ob der von Ihnen verfolgte Zweig voraus ist, zurückliegt oder abgewichen ist. Wenn nichts angezeigt wird, werden die lokalen und entfernt das Gleiche.

  2. git show-branch *master zeigt Ihnen die Übertragungen in allen Zweigen, deren Namen auf master enden (z.B. master und origin/master).

Wenn Sie -v avec git remote update können Sie sehen, welche Zweige aktualisiert wurde, so dass Sie eigentlich keine weiteren Befehle benötigen.

41voto

jag Punkte 850

Eine gute Möglichkeit, sich einen synthetischen Überblick über den "Ursprung" zu verschaffen, ist:

git remote show origin

36voto

Paul 501 Punkte 617

Ich benutze einfach

git remote update
git status

Letzteres meldet dann, wie viele Commits mein lokales System zurückliegt (wenn überhaupt).

Dann

git pull origin master

um mein Lokal auf den neuesten Stand zu bringen :)

25voto

iceCode Punkte 191

Meine reguläre Frage ist eher "irgendetwas Neues oder Geändertes im Repo", also was geändert ist praktisch. Gefunden aquí .

git whatchanged origin/master -n 1

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X