Vielleicht sollte nun eine zweite Frage:
Aber ich verstehe nicht, wie Git-Pull-Firmen mit git-fetch? Wie kann ich herausfinden, wie und welche Git Optionen von einem Befehl zum anderen fallen?
(ich denke du meinst "co-operate" eher als "corporate" hier.)
Der git pull
Befehl used to be a shell script. Im Skript ist es einfach zu erkennen, welche Optionen an git fetch
übergeben werden, die an git merge
oder git rebase
übergeben werden und welche direkt verbraucht werden.
Ab der Git-Version 2.6.0 wurde der Pull-Befehl in C neu geschrieben.Es ist still possible to tell welche Optionen sind welche, aber es ist jetzt etwas schwieriger, da Sie weiter unten nach den Textschreibweisen jeder Option suchen müssen. (Diese zweite Verbindung kann im Laufe der Zeit zerfallen, wie es GitHub die aktuelle Version der Quelldatei nachschlagen hat, und die Zeilennummern ändern können.)
ich mir git pull
vermeiden empfehlen: run git fetch
, dann das Ergebnis überprüfen, dann wählen git rebase
(normalerweise) oder git merge
(manchmal) nach Bedarf. Ich behalte auch einen Alias, git mff
, der auf git merge --ff-only
expandiert, und ich neige dazu, git fetch && git mff
laufen zu lassen: Wenn der Schnellvorlauf fehlschlägt, möchte ich wahrscheinlich umbasen, es sei denn, ich will zusammenführen, und diese Folge (fetch und merge-wenn-schnell -forwardable) ist entweder erfolgreich (in diesem Fall macht Rebase vs Merge keinen Unterschied und wir sind fertig) oder versagt (in diesem Fall ist es Zeit zu inspizieren).
(Es könnte ein Alias Hinzufügen git fff
wert sein, die git fetch && git mff
läuft ... :-))
Dies kann ohne den Bindestrich als "kooperieren", geschrieben werden, oder sogar als " coöperate ", mit einem diaeresis über dem zweiten o. Die Diärese war im englischen Text im Kleingedruckten üblich (und The New Yorker still uses it!), Aber mit Schreibmaschinen, die nicht in der Lage waren, es zu produzieren, begann in den frühen bis Mitte der 1900er Jahre weniger üblich zu sein. Nun, da Computer Unicode und Umlaute haben - die technisch verschieden sind, aber symbolisch identisch sind - denke ich, dass wir die Diärese zur Präëminenz wiederherstellen sollten. :-)
Der 'git pull' Befehl hat keine eigene' -p' Option. Was tatsächlich passiert, ist, dass "-p" zu "git fetch" weitergeleitet wird. Ich bin mir nicht sicher, wer das falsch gestellt hat: Es ist richtig, dass '-p' nicht korrekt dokumentiert ist (meiner Meinung nach ist' git pull' selbst nicht korrekt dokumentiert, aber 'git pull' sollte nicht einmal existieren :-)). – torek
@torek Vielleicht diejenigen, die denken, dass '-p' für' --patch' steht und diese Frage als Duplikat markieren –
@KevinB Nein, in dieser Frage, die Sie mit '-p' verbunden haben bedeutet' --patch' –