SuppachokN - adobe
Git-Branches in ein entferntes Repository verschieben
Wie kann ein Entwickler den Code, den er in einem neu erstellten Git-Branch geschrieben hat, in ein entferntes GitHub-Repository übertragen? Wir zeigen die Vorgehensweise.
Unabhängig davon, ob man GitFlow, GitLab flow oder GitHub flow verwendet, sollte die gesamte lokale Softwareentwicklung in lokalen, isolierten Branches (Zweigen) erfolgen. Die Entwicklung auf Basis von Branches ermutigt Entwickler zum Experimentieren und zur Entdeckung innovativer Lösungen.
Doch wie kann ein Entwickler den Code, den er in einem neu erstellten Git-Branch geschrieben hat, in ein entferntes GitHub-Repository übertragen? Das ist nicht schwer. Sie müssen allerdings einen Git-Konfigurationsbefehl für den Upstream-Branch ausführen, bevor die Übertragung an das entfernte GitHub-Repository möglich ist.
Einen neuen Git-Branch in ein entferntes Repository verschieben
Um neue Git-Branches in ein entferntes Repository wie GitHub, GitLab oder Bitbucket zu verschieben, sind folgende Schritte erforderlich:
- Klonen Sie das entfernte Git-Repository lokal
- Erstellen Sie einen neuen Branch mit den Befehlen branch, switch oder checkout
- Führen Sie einen git push mit der Option -set-upstream durch, um das entfernte Repository für den neuen Branch festzulegen
- Führen Sie weiterhin lokale Git-Befehle für den neuen Branch aus
- Verwenden Sie den Befehl git push origin, wenn Sie den neuen Branch an den entfernten Server übertragen
Um einen neuen lokalen Branch zu erstellen, der in das entfernte GitHub-Repository übertragen wird, führen Sie einfach einen Git-Branch-, Switch- oder Checkout-Befehl aus. Es gibt viele Möglichkeiten, Branches in Git zu erstellen.
github@branch/c/remote/push (main)
git switch -c new-branch
Mit dem Befehl git branch -a wird überprüft, ob der neue Git-Branch, der an das entfernte GitHub-Repository übertragen werden soll, tatsächlich lokal erstellt wurde.
github@branch/c/remote/push (new-branch)
git branch -a
main
* new-branch
remotes/origin/HEAD -> origin/main
remotes/origin/main
remotes/origin/new-branch
Beachten Sie, dass in diesem Beispiel der git-switch-Befehl verwendet wird, um einen neuen Branch zu erstellen und zu verschieben, und nicht der git-checkout-Befehl. Der git-switch-Befehl hat checkout in einer Git-Version von 2020 ersetzt.
Neue Git-Branches und Upstream-Repositories
Wenn ein neuer Branch erstellt wurde, muss der -set-upstream-Switch bei der ersten Durchführung eines Push ausgeführt werden. Dieser Schritt teilt dem neuen Branch mit, welches entfernte Repository er bei jeder Synchronisierung seines Übergabeverlaufs verwenden soll.
github@branch/c/remote/push (new-branch)
$ git push -set-upstream origin new-branch
Enumerating objects: 3, done.
* [new branch] new-branch -> new-branch
Branch ‘new-branch’ set up to track remote branch ‘new-branch’ from ‘origin’.
Wenn der Schritt -set-upstream nicht ausgeführt wird, schlägt der Push des neuen Branch in das entfernte Repository mit folgendem Fehler fehl:
fatal: The current branch has no upstream branch
Neuen Git-Branch auf GitHub veröffentlichen
Eine kurze Aktualisierung der Landing Page des Projekts auf GitHub zeigt, dass der neue Git-Branch erfolgreich an das entfernte Projekt übertragen wurde.
Sobald das entfernte GitHub-Repository als Upstream-Ziel für den neuen Git-Branch festgelegt ist, können Push- und Pull-Vorgänge ganz normal mit einem einfachen git push origin-Befehl durchgeführt werden.
Laufende Push- und Pull-Befehle für GitHub
Der vollständige Satz der in diesem Beispiel verwendeten Befehle lautet wie folgt
github@branch/c/remote/push (new-branch)
git clone https://github.com/learn-git-fast/git-branch-examples.git
cd git*
git checkout -b new-branch
github@branch/c/remote/push (new-branch)
git branch -a
touch devolution.jpg
git add .
git commit -m "Are we not gender neutral people? We are Devo?"
git push --set-upstream origin new-branch
github@branch/c/remote/push (new-branch)
touch eden.html
git add .
git commit -m "Eden added"
git push origin