Hausaufgabe: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
| Zeile 32: | Zeile 32: | ||
===Sprint für Hausaufgabe anlegen=== | ===Sprint für Hausaufgabe anlegen=== | ||
{{RefImg|gitea_firstsprintmilestone.png|500px|2|Den Hausaufgabensprint erstellen.}} | {{RefImg|gitea_firstsprintmilestone.png|500px|2|Den Hausaufgabensprint erstellen.}} | ||
Prüfen sie ob in Gitea ein Sprint | Prüfen sie ob in Gitea ein Sprint für die Hausaufgabe angelegt wurde. Falls nicht, legen Sie den entsprechenden Sprint (Milestone in Gitea) an: | ||
*Klicken Sie auf den Reiter <code>Issues -> Meilensteine</code>. | *Klicken Sie auf den Reiter <code>Issues -> Meilensteine</code>. | ||
*Falls kein Sprint (Milestone) für die Hausaufgabe angezeigt wird (siehe Abb. 2), legen Sie einen Milesstone mit dem Namen <code>Sprint 00 (Hausaufgabe)</code> an. | *Falls kein Sprint (Milestone) für die Hausaufgabe angezeigt wird (siehe Abb. 2), legen Sie einen Milesstone mit dem Namen <code>Sprint 00 (Hausaufgabe)</code> an. | ||
| Zeile 63: | Zeile 63: | ||
Bevor Sie mit den Aufgaben beginnen, sollten Sie sich die entsprechenden Issues zuweisen (siehe Abb. 4). | Bevor Sie mit den Aufgaben beginnen, sollten Sie sich die entsprechenden Issues zuweisen (siehe Abb. 4). | ||
*Wählen Sie eines ihrer Issues aus dem Sprintbacklog (<code>Issues -> Milestones -> Sprint 00 (Hausaufgabe)</code>) aus, indem Sie auf den Titel des Issues klicken. | *Wählen Sie eines ihrer Issues aus dem Sprintbacklog (<code>Issues -> Milestones -> Sprint 00 (Hausaufgabe)</code>) aus, indem Sie auf den Titel des Issues klicken. | ||
*Geben sie eine Abschätzung wie lange | *Geben sie eine Abschätzung wie lange Sie benötigen werden um den Issue nach der Definition of Done umzusetzten. Weisen Sie das Label <code>est: 1</code> um die Abschätzung zu geben, dass es insgesamt eine Stunde Arbeit benötigt wird. Wenn sie vermuten, dass Sie mehr als eine Stunde benötigen, wählen Sie einen entsprechend höheren Wert aus. | ||
* Weisen Sie sich dem Issue zu, indem Sie auf das Zahnrad neben dem Schriftzug ''Zuständig'' klicken, und ihren Benutzernamen auswählen. | * Weisen Sie sich dem Issue zu, indem Sie auf das Zahnrad neben dem Schriftzug ''Zuständig'' klicken, und ihren Benutzernamen auswählen. | ||
Weisen Sie so alle Tasks die sie in den vorhergehenden Aufgaben erstellt haben zu. Weisen Sie sich auch den Issue zu Aufgabe 5 zu, falls dieser schon existierte. | |||
Beachten Sie, dass es nicht nötig für jede Änderung einen Kommentar zu schreiben. Alle Änderungen an Labels und zugewiesenen Personen werden sofort übernommen und in der Historie des Issues eingetragen. | Beachten Sie, dass es nicht nötig für jede Änderung einen Kommentar zu schreiben. Alle Änderungen an Labels und zugewiesenen Personen werden sofort übernommen und in der Historie des Issues eingetragen. | ||
| Zeile 81: | Zeile 81: | ||
*Lesen Sie außerdem den Wikipedia-Artikel zu [http://de.wikipedia.org/wiki/User_Story User Stories]. | *Lesen Sie außerdem den Wikipedia-Artikel zu [http://de.wikipedia.org/wiki/User_Story User Stories]. | ||
* Machen Sie sich mit den anderen Funktionen von [[Gitea]] vertraut und lesen Sie den Artikel [[Ablauf|Scrum im Sopra]] | * Machen Sie sich mit den anderen Funktionen von [[Gitea]] vertraut und lesen Sie den Artikel [[Ablauf|Scrum im Sopra]] | ||
*Sollte es Fragen zum Vorgehen (Scrum und Gitea) geben, schreiben Sie diese als Kommentar in ihr Issue in Gitea, damit eventuelle Fragen schnell geklärt werden können (Kommentarfeld unter <code>Issues -> Meilensteine -> Sprint 00 (Hausaufgabe) -> Scrum, Gitea und Git verstehen</code>). | *Sollte es Fragen zum Vorgehen (Scrum und Gitea) geben, schreiben Sie diese als Kommentar in ihr Issue in Gitea, damit eventuelle Fragen schnell geklärt werden können (Kommentarfeld unter <code>Issues -> Meilensteine -> Sprint 00 (Hausaufgabe) -> Scrum, Gitea und Git verstehen</code>; vergessne Sie nicht ihren Tutor und/oder die Dozenten per <code>@</code> zu erwähnen, damit diese die Frage auch sehen). | ||
*Lesen sie die Artikel [[GIT|Git]] und [[GitWorkflow| Git Workflow]] | *Lesen sie die Artikel [[GIT|Git]] und [[GitWorkflow| Git Workflow]] | ||
**Richten Sie sich den Zugang zu ihrem Gruppenrepository ein, indem Sie in [[Gitea]] ein [[Gitea#HTTPS Kennwort einrichten|HTTPS Kennwort einrichten]] oder einen [[Gitea#SSH Key hinzufügen|SSH Key hinzufügen]]. | **Richten Sie sich den Zugang zu ihrem Gruppenrepository ein, indem Sie in [[Gitea]] ein [[Gitea#HTTPS Kennwort einrichten|HTTPS Kennwort einrichten]] oder einen [[Gitea#SSH Key hinzufügen|SSH Key hinzufügen]]. | ||
**[[Git#Repository klonen|Klonen]] sie das Gruppenrepository. | **[[Git#Repository klonen|Klonen]] sie das Gruppenrepository. | ||
**Öffnen Sie dort die Datei <code>README.md</code> und fügen Sie ihren Namen an der dafür vorgesehenen Stelle hinzu (Verwenden Sie hierfür | **Öffnen Sie dort die Datei <code>README.md</code> und fügen Sie ihren Namen an der dafür vorgesehenen Stelle hinzu (Verwenden Sie hierfür '''nicht''' den Editor in Gitea, sondern eine lokale Kopie des Repositories wie in dieser Aufgabe beschrieben). | ||
**[[Git#Änderungen an einer Datei| Committen]] sie ihre Änderungen: Benutzen sie die Commitnachricht <code>Added name to README.md (closes #<issue-nummer>)</code> um das entsprechende Issue in Gitea [[Git#Git und Gitea | per Commitnachricht zu schließen]]. | **[[Git#Änderungen an einer Datei| Committen]] sie ihre Änderungen: Benutzen sie die Commitnachricht <code>Added name to README.md (closes #<issue-nummer>)</code> um das entsprechende Issue in Gitea [[Git#Git und Gitea | per Commitnachricht zu schließen]]. | ||
**[[Git#Änderungen in das remote Repository laden (pushen)| Synchronisieren]] sie ihre Änderungen mit dem Server. Halten Sie sich dabei and [[GitWorkflow#Tägliche Arbeit Synchronisieren| den empfohlenen Git-Workflow]]. Es it gut möglich, dass durch den Commit konflikte entstehen: Beachten sie hierzu [[Git#Konflikte lösen| die Anleitung zum Konflikte lösen in Git]], und lösen Sie die entstehenden Konflikte sinvoll auf. | **[[Git#Änderungen in das remote Repository laden (pushen)| Synchronisieren]] sie ihre Änderungen mit dem Server. Halten Sie sich dabei and [[GitWorkflow#Tägliche Arbeit Synchronisieren| den empfohlenen Git-Workflow]]. Es it gut möglich, dass durch den Commit konflikte entstehen: Beachten sie hierzu [[Git#Konflikte lösen| die Anleitung zum Konflikte lösen in Git]], und lösen Sie die entstehenden Konflikte sinvoll auf. | ||
*Sollte es noch keine <code>.gitignore</code>-Datei in Ihrem Repository geben, erstellen Sie in ihrem Repository eine entsprechende Datei ([[Git#Dateien Ignorieren]]), sodass temporäre Dateien von Visual Stuidio und Verzeichnisse für den Compileroutput von Git ignoriert werden. Comitten Sie diese Datei und pushen Sie diese ebenfalls. Eine gute Vorlage finden Sie unter [https://github.com/github/gitignore/blob/master/VisualStudio.gitignore Github]. | *Sollte es noch keine <code>.gitignore</code>-Datei in Ihrem Repository geben, erstellen Sie in ihrem Repository eine entsprechende Datei ([[Git#Dateien Ignorieren]]), sodass temporäre Dateien von Visual Stuidio und Verzeichnisse für den Compileroutput von Git ignoriert werden. Comitten Sie diese Datei und pushen Sie diese ebenfalls. Eine gute Vorlage finden Sie unter [https://github.com/github/gitignore/blob/master/VisualStudio.gitignore Github]. | ||
'''Hinweis''': Achten Sie darauf, dass die in ihrem [[Git]] eingestellte Emailadresse mit der in Gitea eingestellten Emailadesse übereinstimmt, da Ihnen sonst keine Commits zugeordnet werden können. | '''Hinweis''': Achten Sie darauf, dass die in ihrem [[Git]] eingestellte Emailadresse mit der in Gitea eingestellten Emailadesse übereinstimmt, da Ihnen sonst keine Commits zugeordnet werden können (siehe [[Formalien]]). | ||
'''Hinweis:''' Prüfen sie ihre Änderungen bevor sie diese per push mit dem server synchronisieren: prüfen Sie ob sie ausversehen ungewollte Dateien in den Commit aufgenommen haben und ob die Commitnachricht auch dem Inhalt entspricht. Sollten Sie im Verlauf des Projekts Codedateien mergen, prüfen Sie immer, ob das Programm nach dem Merge noch kompiliert/funktioniert. | |||
==Aufgabe 4: Texte lesen== | ==Aufgabe 4: Texte lesen== | ||
| Zeile 143: | Zeile 145: | ||
==Aufgabe 6: Abgabe finalisieren== | ==Aufgabe 6: Abgabe finalisieren== | ||
Wenn Sie in Ihrer Gruppe die Aufgaben als letztes abschließen (d.h. Sie | Wenn Sie in Ihrer Gruppe die Aufgaben als letztes abschließen (d.h. Sie den letzten Issue im Sprintbacklog schließen) fällt Ihnen die Aufgabe zu, den Sprit für Ihre Gruppe abzuschießen ([[GitWorkflow#Sprint Abschließen|vgl. Sprint Abschlißen]]): | ||
| Zeile 149: | Zeile 151: | ||
Der Fortschritt der während des Sprints erzielt wurde (Inkrement) muss auf den <code>release</code> branch übertragen werden, damit trotz weiterer Arbeit immer eine auslieferbare Version verfügbar ist. In den auf die Hausaufgabe folgenden Sprints gehört dies zu den aufgaben des Product owners. | Der Fortschritt der während des Sprints erzielt wurde (Inkrement) muss auf den <code>release</code> branch übertragen werden, damit trotz weiterer Arbeit immer eine auslieferbare Version verfügbar ist. In den auf die Hausaufgabe folgenden Sprints gehört dies zu den aufgaben des Product owners. | ||
*Schließen Sie das Sprintbacklog (<code>Issues -> Meilensteine -> Sprint 00 (Hausaufgabe) -> Schießen</code>). | *Schließen Sie das Sprintbacklog (<code>Issues -> Meilensteine -> Sprint 00 (Hausaufgabe) -> Schießen</code>). | ||
*Erstellen sie einen [[Gitea#Pullrequest|Pullrequest]] (siehe Abb. 8), sodass der aktuelle Stand von <code> | *Erstellen sie einen [[Gitea#Pullrequest|Pullrequest]] (siehe Abb. 8), sodass der aktuelle Stand von <code>main</code> nach <code>release</code> übertragen werden kann. Gehen Sie wie folgt vor: | ||
**Klicken Sie in Gitea auf den Reiter <code>Code -> Branch: | **Klicken Sie in Gitea auf den Reiter <code>Code -> Branch: main</code>. | ||
**Drücken Sie auf den Button <code>Neuer Pull-Request</code>. | **Drücken Sie auf den Button <code>Neuer Pull-Request</code>. | ||
**Prüfen Sie im folgenden Dialog, dass als Ziel <code>release</code> und als pullen von <code> | **Prüfen Sie im folgenden Dialog, dass als Ziel <code>release</code> und als pullen von <code>main</code> gewählt sind. Geben Sie dem Pullrequest den Titel ''Hausaufgabe''. Ihnen werden daraufhin alle Änderungen die mit dem Pull-Request vom <code>main</code> auf den <code>release</code> -Branch übertragen werden sollen angezeigt. | ||
**Drücken Sie auf <code>Pullrequest Erstellen</code>. | **Drücken Sie auf <code>Pullrequest Erstellen</code>. | ||
**Gitea wird feststellen, dass es zwischen <code> | **Gitea wird feststellen, dass es zwischen <code>main</code> und <code>release</code> keine Konflikte gibt, und der Merge automatisch durchgeführt werden kann. Ein weiteres Drücken auf <code>Pull-Request Zusammenführen</code> öffnet ein Kommentarfenster, noch einmal drücken schließt den Pull-Request ab. | ||
Die Änderungen die Sie und ihre Gruppe während des Hausaufgabensprints gemacht haben, befinden sich nun auch auf dem <code>release</code>-Branch. | Die Änderungen die Sie und ihre Gruppe während des Hausaufgabensprints gemacht haben, befinden sich nun auch auf dem <code>release</code>-Branch. | ||
