Als Antwort auf die Frage, ob jeweils ein Commit aus einem Git-Repository abgerufen werden soll , wurde mir empfohlen, git remote update
anstelle von zu verwenden git fetch
. Ich habe beide Manpages gelesen, kann aber nicht sagen, dass ich sie auch vollständig verstanden habe.
Kann mir jemand erklären, wie git fetch origin
und wie man get remote update origin
sich anders verhält?
Antworten:
Bei dieser Verwendung macht es keinen Unterschied.
remote update
ist ein Befehl auf sehr hoher Ebene - er unterstützt gruppierte Fernbedienungen (remotes.<group> = <list>
) und das Aktualisieren aller Fernbedienungen (außer denen mitremote.<name>.skipDefaultUpdate
set), jedoch keine der spezifischeren Abrufoptionen. Unter der Haube funktioniert es jedoch genauso wie beim Abrufen mit den Standardoptionen.Die Antwort, die
remote update
anstelle von git fetch empfohlen wurde, bestand darin, es ohne einen entfernten Namen zu empfehlen, nur um alle abzurufen, nicht nur den als Argument genannten. Dies entsprichtgit fetch --all
.Ich sollte den Vorbehalt hinzufügen, dass Fetch und Remote Update bis Version 1.6.6.1 (veröffentlicht am 23. Dezember 2009) nicht denselben Codepfad verwendeten. Aber schon vorher haben sie im Wesentlichen das Gleiche getan, nur mit unterschiedlichem Code (möglicherweise in Eckfällen etwas anders verhalten, aber mir fällt nichts ein).
quelle
git fetch --all
Verwendung von "git remote update
" anstelle von " " zulässt .fetch --all
bin. Ich mache das alles nur durch Variationen vongit log --grep=...
undgit describe --contains
in meinem git.git-Klon.v1.6.6.1~1^2~9
. (Dieselbe Version wie die in meiner Antwort erwähnte Änderung des Remote-Updates, aktualisiert, um dort die Nebenversion hinzuzufügen). Vielleicht war es erst spät, in die Versionshinweise zu kommen?