Wenn ich viele unpushed commits unter vielen Zweigen in meinem lokalen Repo habe, was passiert, wenn ich git push
eintippe? Werden alle diese Commits gepusht oder nur diejenigen, die zum aktuellen Zweig gehören?
Es hängt auch von Ihren Push-Richtlinien ( git config push.default
) ab.
Wie ich in git - push current vs. push upstream (tracking) erläutere, nur das "passing" Politik drückt mehr als der aktuelle Zweig.
Drücken Sie alle Zweige mit dem gleichen Namen an beiden Enden .
Dies bewirkt, dass das Repository, an das Sie gedrängt werden, sich an den Satz von Zweigen erinnert, die ausgegeben werden (zB wenn Sie immermaint
undmaster
dorthin drücken und keine anderen Zweige, das Repository, an das Sie drücken, hat diese zwei Zweige und Ihren localmaint
undmaster
werden dorthin geschoben).
Mit dieser Richtlinie reicht nur ein einfacher git push
aus, um alle (übereinstimmenden) Zweige zu verschieben.
Ohne diese Richtlinie ist git push --all
erforderlich, um erzwingen alle Zweige, die verschoben werden sollen.
Nein, git push
sendet nur Commits von der aktuellen lokalen Verzweigung an die Remote-Verzweigung, die Sie im Befehl angegeben haben.
Sie können git anweisen, alle Zweige zu verschieben, indem Sie das --all
-Argument
Siehe Beschreibung des Befehls