2.7 KiB
Branches
Was sind Branches?
Branches (Zweige) ermöglichen es, parallel zur Hauptentwicklungslinie (z. B. main
) zu arbeiten, ohne diese direkt zu beeinflussen. Sie sind ideal, um neue Features zu entwickeln, Fehler zu beheben oder alternative Ideen auszuprobieren.
Es ist möglich jederzeit zwischen verschiedenen Branches wechseln und später Änderungen zusammenführen. Oft folgt die Branch-Struktur einem bewährten Modell:Es gibt einen main
-Branch, der den stabilen, produktionsreifen Stand des Projekts enthält.
Daneben existiert ein dev
- oder develop
-Branch, auf dem aktiv entwickelt wird.
Alle neuen Feature-Branches werden zunächst in diesen Entwicklungs-Branch gemerged.
Sobald der dev-Branch einen stabilen und fehlerfreien Zustand erreicht hat, wird er in den main
-Branch übernommen.
Wofür verwendet man Branches?
- Feature-Entwicklung: Für neue Funktionen ohne Risiko für den Hauptcode
- Bugfixes: Fehlerbehebungen getrennt vom Hauptbranch
- Experimente: Neue Ideen ausprobieren, ohne das Hauptprojekt zu gefährden
- Main-Branch: Einen Funktionsfähigen und getetesten branch
Branch erstellen
Ein neuer Branch wird mit folgendem Befehl erstellt:
git branch neuer-branchname
In einen Branch wechseln
Um in einen Branch zu wechseln:
git switch neuer-branchname
Branch erstellen und direkt wechseln:
git switch -c neuer-branchname
Änderungen zusammenführen (Merge)
Wenn ein Branch fertig ist, kann er in einen anderen Branch (z. B. main
) gemerged werden (man muss ich auf dem branch befinden in den der andere branch gemerged werden soll):
git checkout main
git merge neuer-branchname
Branch löschen (optional)
Nach dem Merge kann der Branch gelöscht werden:
git branch -d neuer-branchname
Git Merge-Konflikte verstehen und lösen
Merge-Konflikte entstehen, wenn zwei Branches dieselben Zeilen in einer Datei unterschiedlich verändert haben. Git kann diese Konflikte nicht automatisch auflösen – das musst du manuell machen.
1. Konflikt erkennen
Nach einem Merge-Versuch zeigt Git dir betroffene Dateien:
git status
2. Konflikt in der Datei ansehen
Git markiert den Konflikt in der Datei mit diesen Symbolen:
<<<<<<< HEAD
Deine Änderung aus dem aktuellen Branch
=======
Änderung aus dem gemergten Branch
>>>>>>> feature-branch
3. Konflikt lösen
Bearbeite die Datei so, dass du dich für eine Version entscheidest oder beide kombinierst. Entferne danach alle Konfliktmarkierungen.
4. Gelöste Datei zurückmelden
git add <dateiname>
5. Merge abschließen
git commit
Git öffnet einen Editor mit der Merge-Nachricht. Du kannst sie anpassen oder einfach speichern.