-
-
Notifications
You must be signed in to change notification settings - Fork 96
Entwicklung: Ohne git flow
Alexander edited this page Nov 20, 2016
·
5 revisions
- Überblick (engl., PDF ~4MB)
- Features in einer eigenen Branch von
develop
entwickelt & abschließend auch wieder dorthin gemerged. - Hotfixes in einer eigenen Branch von
master
& anschließend ihnmaster
unddevelop
gemerged.
Issue auf GitHub erstellen oder vorhandenes verwenden, z.B. #112. Label "InBearbeitung" setzen und Assignee auf dich.
# Vorbereitung
git fetch -p # -p/--purge entfernt Referenzen zu Branches die es Remote nicht mehr gibt
git checkout develop
git pull --rebase origin develop # Rebase verhindert "Update von Upstream"-Merge-Commits.
# Beginn Entwicklung
# Als Featuremame wird immer eine Issue-Nummer verwendet, optional kann zusätzlich noch ein Name vergeben werden.
git checkout -b 'feature/#112' # Beispiel für Feature #112
# Entwicklung
# Deine Änderungen am Code machen, mit `git add` und `git commit` arbeiten.
# Abschluss
# Erneut Aktualisieren
git fetch -p
git checkout develop
git pull --rebase origin develop
# Fertigstellen: Mergen & Hochladen
git merge --no-ff 'feature/#112' # Änderungen in `develop` mergen, --no-ff erzwingt einen Merge-Commit.
git push origin develop # Änderungen hochladen
Nach Fertigstellung des Features entferne das Label "InBearbeitung" beim Issue wieder und füge "Fertig" hinzu, setze Assignees zusätzlich auf alex1702.
Issue auf GitHub erstellen oder vorhandenes verwenden. z.B. #113. Label "InBearbeitung" setzen und Assignee auf dich setzen.
# Aktualisieren.
# Wie bei einem Feature, nur hier `master` statt `develop`.
git fetch -p
git checkout master
git pull --rebase origin master
# Beginn Entwicklung
# Als Hotfix-Name wird wieder nur eine Issue Nummer verwendet, optional kann auch hier
# zusätzlich noch ein Name vergeben werden.
git checkout -b 'hotfix/#113' master # Beispiel für Bug #113
# Entwicklung
# Deine Änderungen am Code machen, mit `git add` und `git commit` arbeiten.
# Fertigstellung: Hochladen.
git push origin 'hotfix/#113' # Hochladen des Hotfix zu GitHub
Nach Fertigstellung dann im Issue das Label "InBearbeitung" wieder entfernen und füge stattdessen "Fertig" hinzufügen.
Setze Assignees zusätzlich auf alex1702.
Erstelle als letztes noch 2 Pull Requests: Einmal gegen master
und einmal gegen develop
.