git merge origin/master
kann eines von zwei Dingen (oder Fehler) tun.
Im ersten Fall erstellt es ein neues Commit, das zwei Eltern hat: das aktuelle HEAD
, und das Commit, auf das ref zeigt origin/master
(es sei denn, Sie tun etwas lustiges, ist dies wahrscheinlich der lokale Zeiger to) der Zweig mit dem Namen master
auf einer Fernbedienung namens origin
, obwohl dies völlig konventionell ist).
Im zweiten Fall, in dem keine Zusammenführung auf Baumebene erforderlich ist, anstatt einen neuen Festschreibevorgang zu erstellen, wird der aktuell ausgecheckte Verweis aktualisiert, um auf denselben Festschreibungspunkt zu zeigen, auf den origin/master
zeigt. (Dies wird Schnellvorlauf Merge - Git kann angewiesen werden, entweder immer oder nie dies tun, wenn Sie über Befehlszeilen-Flags zusammenführen).
Es ruft nicht git commit
direkt, die eine höhere Ebene (Porzellan in der Git-Sprache) Befehl für Benutzer bestimmt ist.
git merge master/original
Aufruf versuchen und lösen master/original
zu einem Commit, die mit ziemlicher Sicherheit wird (wieder, wenn Sie etwas absichtlich getan haben) nicht die gleiche wie origin/master
sein. Wenn Sie einen Remote mit dem Namen master
haben, der einen Zweig mit dem Namen original
hat, wird ein neuer Commit erstellt, der diesen als zweiten Elternteil enthält.
Sie können git help rev-parse
hilfreich finden, um zu entschlüsseln, wie git versucht, Ref-Namen oder andere Notationen in Commits aufzulösen.
Sie sollten sich wirklich durch [The Book] (http://git-scm.com/book/en/Git-Branching-Remote-Branches) arbeiten. – kostix