Git Tutorial - Branches
- Warum wird ein Zweig benötigt?
- Einen neuen Zweig in Git erstellen
- Einen Zweig in Git löschen
- Einen neuen Zweig erstellen und gleichzeitig in Git auschecken
![Git Tutorial - Branches](/img/Git/feature-image---Git-Branches.webp)
In diesem Tutorial werden wir über eine der wichtigsten Funktionen im git Versionskontrollsystem lernen - den Zweig.
Warum wird ein Zweig benötigt?
Bis jetzt haben wir nur an einem Zweig gearbeitet - dem master
Zweig. Er ist der Standardzweig, wenn wir ein neues Repository erstellen.
Im Allgemeinen repräsentiert der master
Zweig die stabile Version Ihres Codes und ist als der Code gedacht, der veröffentlicht oder publiziert wird. Aus diesem Grund wollen wir nicht wirklich neue Funktionen an dem neuen Code im master
Zweig ausprobieren, nur für den Fall, dass es den Code durcheinander bringt.
Was wir wirklich tun wollen, wenn wir eine neue Funktion zu unserer Anwendung hinzufügen wollen, ist, eine isolierte Umgebung zu schaffen, um diese neue Funktion auszuprobieren, und wenn wir fertig sind und sie testen, können wir diese neue Funktion in den master
-Zweig integrieren. Anstatt weitere Commits in den master
-Zweig einzufügen, erstellen wir einen neuen Zweig, um als isolierte Umgebung zu arbeiten und die neue Funktion auszuprobieren.
Einen neuen Zweig in Git erstellen
$ git branch test_branch
Was wir hier tun, wenn wir diesen Zweig test_branch
machen, ist, dass wir den Zustand des Codes des master
Zweigs auf diesen Zweig kopieren, um mit ihm zu beginnen, und dann können wir in diesem test_branch
Zweig arbeiten.
Sie koennten die auf Ihrem PC verfuegbaren Zweige auflisten, indem Sie sie eingeben,
$ git branch
* master
test_branch
Der neu erstellte test_branch
und der master
Zweig sind hier aufgelistet.
Jetzt sind Sie immer noch auf dem master
Zweig, obwohl Sie gerade den neuen Zweig erstellt haben. Sie müssen den neuen Zweig auschecken, um daran arbeiten zu können.
$ git checkout test_branch
Switched to branch 'test_branch'
D test1_rename.txt
Hier steht, dass er jetzt auf den Zweig test_branch
umgeschaltet ist, und wenn Sie wieder git branch
machen,
$ git branch
master
* test_branch
Dann werden wir sehen, dass wir jetzt auf dem Testzweig
sind, denn das Sternchen *
steht vor Testzweig
, aber nicht mehr master
.
Lassen Sie uns etwas Text an die Datei test3.txt
anhängen, wie This is the added line in branch test_branch.
. Wenn Sie jetzt git status
machen, werden Sie sehen, dass Sie diese Datei geändert haben.
$ git status
On branch test_branch
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: test3.txt
no changes added to commit (use "git add" and/or "git commit -a")
Wir könnten die Änderungen an diesen Zweig als das übergeben, was wir in den letzten Kapiteln gelernt haben.
Was wir getan haben, ist, dass wir diesen neuen Zweig erstellt und einige Änderungen vorgenommen haben, die vom master
-Zweig isoliert sind. Die Codes im master
-Zweig bleiben unverändert und stabil.
Einen Zweig in Git löschen
Nachdem wir mit dem neuen Feature, das dem Zweig hinzugefügt wurde, zufrieden sind, konnten wir es löschen.
$ git checkout master
$ git branch -d test_branch
error: The branch 'test_branch' is not fully merged.
If you are sure you want to delete it, run 'git branch -D test_branch'.
Der Parameter -d
nach branch
bedeutet, dass der angegebene Zweig gelöscht wird.
Wir haben einen Fehler, der besagt The branch 'test_branch' is not fully merged. If you are sure you want to delete it, run 'git branch -D test_branch'.
. Das kleingeschriebene d
funktioniert erst, wenn wir den Zweig zusammengeführt haben, aber das großgeschriebene D
könnte den Zweig zwangsweise löschen. Wir werden in den nächsten Kapiteln einführen, wie man einen Zweig zusammenführt, aber für den Moment benutzen wir einfach das große D
, um diesen Zweig zu löschen.
$ git branch -D test_branch
Deleted branch test_branch (was 7d6bca6).
Wenn Sie jetzt Zweige markieren, zeigt es nur noch den master
-Zweig an.
$ git branch
* master
Einen neuen Zweig erstellen und gleichzeitig in Git auschecken
Der oben gezeigte Arbeitsablauf erstellt zuerst einen Zweig mit git branch
und checkt diesen Zweig dann mit git checkout
aus.
Es gibt einen schnelleren Weg, diese beiden Schritte zu einem zu kombinieren.
$ git checkout -b new_test_branch
Switched to a new branch 'new_test_branch'
M test3.txt
Was er macht, ist, dass er einen Branch erstellt und ihn auch auscheckt. Also müssen wir diese beiden Schritte nicht getrennt durchführen.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook