Git Push
Zuletzt aktualisiert
git push lädt die Commits deines lokalen Branches zu seinem Remote-Gegenstück hoch (wie GitHub). Sobald ein Branch einen Upstream gesetzt hat, genügt ein einfaches git push; der erste Push eines neuen Branches verwendet -u, um den Remote-Branch zu erstellen und das Tracking einzurichten, sodass künftige Pushes und Pulls keine Argumente benötigen.
Probiere diese im Terminal-Playground aus - eine echte Shell in deinem Browser, nichts zu installieren.
Syntax
| Command | What it does |
|---|---|
git push | Pusht den aktuellen Branch zu seinem Upstream |
git push -u origin feature | Pusht einen neuen Branch und setzt den Upstream |
git push origin main | Pusht zu einem bestimmten Remote und Branch |
git push --tags | Pusht alle lokalen Tags |
git push --force-with-lease | Sicherer Force Push nach einem Rebase |
Häufige Fälle
| Goal | Command |
|---|---|
| Einen brandneuen Branch pushen | git push -u origin feature |
| Pushen, nachdem der Upstream gesetzt ist | git push |
| Einen einzelnen Tag pushen | git push origin v1.0.0 |
| Einen Remote-Branch löschen | git push origin --delete feature |
git push FAQ
Wie pushe ich einen neuen Branch zum Remote?
Führe
git push -u origin <branch> aus. Das -u (Kurzform für --set-upstream) erstellt den Branch auf dem Remote und verknüpft deinen lokalen Branch damit, sodass danach ein einfaches git push und git pull ohne Argumente funktionieren. Der Remote-Branch existiert erst mit diesem ersten Push.Warum sagt git push 'no upstream branch'?
Dein lokaler Branch ist noch nicht mit einem Remote-Branch verknüpft. Pushe ihn mit
git push -u origin <branch>, um den Remote-Branch zu erstellen und den Upstream zu setzen. Danach weiß git push allein, wohin die Commits gesendet werden sollen.Wie pushe ich Tags?
Tags werden standardmäßig nicht gepusht. Pushe einen einzelnen Tag mit
git push origin <tagname> oder alle auf einmal mit git push --tags. Das ist eine häufige Stolperfalle - ein lokal erstellter Tag erscheint erst auf dem Remote, wenn du ihn ausdrücklich pushst.Wie mache ich einen Force Push sicher?
Nachdem du die History umgeschrieben hast (ein Rebase oder Amend), verwende
git push --force-with-lease statt --force. Es überschreibt das Remote nur, wenn seit deinem letzten Fetch niemand anderes gepusht hat, und schützt so die Arbeit der Teamkollegen. Auf der Seite git force push findest du die vollständige Erklärung.Kann ich das online üben?
Ja. Öffne den Terminal-Playground, um
git push in einer echten Shell in deinem Browser auszuführen - nichts zu installieren. Coddys kostenloser interaktiver Git-Kurs behandelt außerdem Schritt für Schritt das Arbeiten mit Remotes.