@ -110,19 +110,19 @@ Man kann sich ein Kreis vorstellen. Test -> Code -> Refactor.
- Merge/Rebase Konflikte sind behoben.
- Merge/Rebase Konflikte sind behoben.
## Branching
## Branching
# Master
### Master
Haben eine unendliche Lebensdauer und einen Verantwortlichen „Committer“. Jeder Commit verweist auf einen Versand. Commits sind mit Versionsnummern gekennzeichnet. Es sind keine direkten Commits, nur Merges aus dem Realese- oder Fix-zweig erlaubt.
Haben eine unendliche Lebensdauer und einen Verantwortlichen „Committer“. Jeder Commit verweist auf einen Versand. Commits sind mit Versionsnummern gekennzeichnet. Es sind keine direkten Commits, nur Merges aus dem Realese- oder Fix-zweig erlaubt.
#Develop
### Develop
Erstes Commit ist das Projektstart. Ist immer im versandbereiten Zustand und Testdurchläufe sind automatisiert. Jeder Entwickler kann Feature festschreiben (Bis Build-Server).
Erstes Commit ist das Projektstart. Ist immer im versandbereiten Zustand und Testdurchläufe sind automatisiert. Jeder Entwickler kann Feature festschreiben (Bis Build-Server).
# Release
### Release
Hat eine begrenze Lebensdauer während des Einfrierens einer Funktion. Keine neuen Funktionen werden angelegt, sondern Fehler werden behoben. Jeder Entwickler kann sich verpflichten. Release sind auch Kandidaten von Tags. Der Build-Server sollte den Zweig wieder mit dem Develop-Branch zusammenführen.
Hat eine begrenze Lebensdauer während des Einfrierens einer Funktion. Keine neuen Funktionen werden angelegt, sondern Fehler werden behoben. Jeder Entwickler kann sich verpflichten. Release sind auch Kandidaten von Tags. Der Build-Server sollte den Zweig wieder mit dem Develop-Branch zusammenführen.
# Hotfix
## Hotfix
Hat eine Kurze Lebensdauer. Erscheint aus dem Master (Letze Commit). Ist keine neue Funktion, sondern nur zum schnellen beheben von Fehlern.
Hat eine Kurze Lebensdauer. Erscheint aus dem Master (Letze Commit). Ist keine neue Funktion, sondern nur zum schnellen beheben von Fehlern.
# Feature.
## Feature.
Hat eine begrenzte Lebensdauer und stammt aus Develop. Sollte ein neues Commit in dem Entwickler basieren und zusammenführen.
Hat eine begrenzte Lebensdauer und stammt aus Develop. Sollte ein neues Commit in dem Entwickler basieren und zusammenführen.
## Merge
## Merge
@ -133,7 +133,7 @@ Komplexe Vergangenheit Grafik und Konfliktlösung zwischen den Finalzuständen s
Hat eine Saubere Vergangenheitsgraph (man sieht alles: Funktionen, Commits und wies es aufeinander folgt). Ein automatischer Konfliktlösung ist wahrscheinlicher und auch das manuelle Lösung ist einfacher
Hat eine Saubere Vergangenheitsgraph (man sieht alles: Funktionen, Commits und wies es aufeinander folgt). Ein automatischer Konfliktlösung ist wahrscheinlicher und auch das manuelle Lösung ist einfacher
Die Nachteile sind das wir keine Zeitachse über den verlauf haben. Commits können zu Problemen führen.
Die Nachteile sind das wir keine Zeitachse über den verlauf haben. Commits können zu Problemen führen.
Eein Rebase wird erst bevorzugt, wenn das arbeiten an einem unvollendeten Feature, noch keine Zweige intergriert wurden. Eine Saubere Historie wird erwünscht und beinhaltet viele Commits.
Ein Rebase wird erst bevorzugt, wenn das arbeiten an einem unvollendeten Feature, noch keine Zweige intergriert wurden. Eine Saubere Historie wird erwünscht und beinhaltet viele Commits.
Merge wird verwendet, wenn der aktuelle Zweig ein Develop oder ein Master ist. Die Historie sollte mit der Zeitachse synchron bleiben und wenn der aktuelle Zweig zusammengeführt is.t
Merge wird verwendet, wenn der aktuelle Zweig ein Develop oder ein Master ist. Die Historie sollte mit der Zeitachse synchron bleiben und wenn der aktuelle Zweig zusammengeführt is.t