2013-07-18 20 views
26

Ich beginne jetzt mit Git zu spielen und bin ein bisschen verwirrt. Für mich sieht es so aus, als gäbe es viele Möglichkeiten, das Gleiche zu tun. Meine Frage ist nun, was ist der Unterschied zwischen den folgenden Befehle:Was ist der Unterschied zwischen 'git remote update', 'git fetch' und 'git pull'?

  • git remote Update
  • git holen
  • git

auch ziehen, die man eher für Update ist eine lokale Kopie einer entfernten Filiale?

+0

Siehe [Unterschiede zwischen git remote update und fetch?] (Http://stackoverflow.com/questions/1856499/differences-between-git-remote-update-and-fetch), und auch [Was ist der Unterschied zwischen 'git fetch origin 'und' git remote update origin'? (http://stackoverflow.com/questions/2688251/what-is-the-difference-between-git-fetch-origin-and-git-remote-update) -Ursprung). –

+0

Mögliches Duplikat von [Was ist der Unterschied zwischen 'git pull' und 'git fetch'?] (Http://stackoverflow.com/questions/292357/whats-the-difference-between-git-pull-and-git-fetch). –

Antwort

33

git remote update werden alle Ihre Zweigstellen aktualisieren Remote diejenigen zu verfolgen, sondern verschmelzen keine Änderungen in.

git fetch aktualisieren wird nur der Zweig Sie sind, aber nicht Verschmelzen Sie alle Änderungen in.

git pull wird aktualisiert und zusammenführen alle remote-Änderungen der aktuellen Zweig Sie sind auf. Dies wäre der, den Sie verwenden, um einen lokalen Zweig zu aktualisieren.

+3

'git fetch' wird andere Zweige aktualisieren, wenn Sie möchten. Versuchen Sie 'git fetch --all ' – Arafangion

+5

Wussten Sie, dass Sie tatsächlich Zusammenführungen mit fetch durch Verwendung von refspecs vorspulen können ?:' git fetch origin master: master'. Das funktioniert nur, wenn Sie "master" nicht ausgecheckt haben, da Git den Zweigzeiger verschieben muss und es nicht tut, wenn Sie sich gerade in der Verzweigung befinden. –

+3

'Get Fetch' scheint alle Zweige zu holen, wenn ich es tue, auch ohne den Schalter --all zu benutzen (Git für Windows 2.10.0.1) –

0

nicht über das git Remote-Update sicher, aber git pull ist die git automatisch von einem git merge gefolgt Abruf ...

Dieses teilweise ein Duplikat ist. Check: What is the difference between 'git pull' and 'git fetch'?

Auch, wenn es dir etwas bedeutet, ich habe noch nie git Remote-Update verwendet weder fgit holen. Sie können gut mit Pull, Commit und Push tun.

Hoffe, es hilft ..

+1

'git fetch' hat seinen Platz ... manchmal kümmert es dich nur, wie viele Zweige dein Manager beschnitten hat; manchmal möchten Sie nur die Updates von der Branche, in der Sie gerade sind. – Makoto

+0

Ich schätze, es macht Sinn =) – LucasA

+2

Ich benutze fast nie 'git pull', ich möchte immer eine Vorschau von Upstream-Änderungen sehen, bevor ich sie zusammenführe, also benutze ich meistens' git fetch'. –

Verwandte Themen