GitWorkflow: Unterschied zwischen den Versionen

Aus Das Sopra Wiki
Langenfeld (Diskussion | Beiträge)
Langenfeld (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
{{Stub}}
{{Stub}}


Für die Arbeit mit Branches in Git existeirern verschiedene Vorgehensmodelle, die sich für verschiedene Projekte und Teamgrößen eigenen.
TODO


== Developer-Branch ==
== Sopra-Branching ==
 
Für das Sopra empfehlen wir ein mit wenig Verwaltungsaufwand und merging verbundenes Vorgehen, in dem die beiden Branches ''master'' und ''dev'' verwendet werden. Beide branches erfüllen spezielle Rollen:
* dev: die Arbeit jedes Entwicklers wird auf den branch ''dev'' gerebased, sodass eine ordentliche lineare Abfloge von Änderungen entsteht.
* master: jede fertige weiterentwicklung des Projekts (z.B.: das Sprintincrement oder die Hausuafgabe) wird auf den ''master'' branch gemergt.
 
Jeder Gruppe ist es überlassen selbst für spezielle Aufgaben mehr Branches zu verwenden, das mergen des wöchentlichen Inkrements in den ''master'' branch ist jedoch obligatorisch, da nur dieser im Gruppentreffen und zur Beurteilung der mitarbeit herangezogen wird.
 
 
=== Beispiel ===
 
Nach einer Woche entwicklung könnte die Historie des Repositories ungefähr so aussehen.
 
<source>
(HEAD, remote/dev) | * .... - Game object resizing  - student03
| |
| * .... - Game object able to move (hardcoded) - student01
| |
| * .... - Better wildcard texture for game objects - student03
| |
| * .... - A nice drawable game object - student01
| |
| * .... - Prototype spatial data structure for game objects - student02
| |
| * .... - Interface for game objects - student01
|/
(remote/master) *
</source>


Beim Developer-Branch vorgehen gibt es zwei Branches. Den ''master''-branch, in dem immer eine Version des codes, der jederzeit veröffnetlich werden könnte. Im ''developer''-branch arbeitet das Team zusammen am nächsten Increment.


== Links ==
== Links ==
Zeile 11: Zeile 38:
*[https://t3n.de/news/git-workflows-zusammenarbeit-1095433/ Git Workflows einfach erkärt]
*[https://t3n.de/news/git-workflows-zusammenarbeit-1095433/ Git Workflows einfach erkärt]
*[https://www.atlassian.com/git/tutorials/merging-vs-rebasing#workflow-walkthrough Merging vs. Rebasing]
*[https://www.atlassian.com/git/tutorials/merging-vs-rebasing#workflow-walkthrough Merging vs. Rebasing]
*[https://martinfowler.com/bliki/FeatureBranch.html FeatureBranch]
*[https://martinfowler.com/bliki/FeatureBranch.html FeatureBranch] [[Kategorie:Code-Beispiele]]

Version vom 9. Oktober 2018, 16:59 Uhr



TODO

Sopra-Branching

Für das Sopra empfehlen wir ein mit wenig Verwaltungsaufwand und merging verbundenes Vorgehen, in dem die beiden Branches master und dev verwendet werden. Beide branches erfüllen spezielle Rollen:

  • dev: die Arbeit jedes Entwicklers wird auf den branch dev gerebased, sodass eine ordentliche lineare Abfloge von Änderungen entsteht.
  • master: jede fertige weiterentwicklung des Projekts (z.B.: das Sprintincrement oder die Hausuafgabe) wird auf den master branch gemergt.

Jeder Gruppe ist es überlassen selbst für spezielle Aufgaben mehr Branches zu verwenden, das mergen des wöchentlichen Inkrements in den master branch ist jedoch obligatorisch, da nur dieser im Gruppentreffen und zur Beurteilung der mitarbeit herangezogen wird.


Beispiel

Nach einer Woche entwicklung könnte die Historie des Repositories ungefähr so aussehen.

(HEAD, remote/dev)	| * .... - Game object resizing  - student03
					| | 
					| * .... - Game object able to move (hardcoded) - student01
					| | 
					| * .... - Better wildcard texture for game objects - student03
					| | 
					| * .... - A nice drawable game object - student01
					| | 
					| * .... - Prototype spatial data structure for game objects - student02
					| | 
					| * .... - Interface for game objects - student01
					|/
(remote/master) 	*


Links