| Merge Request | Antrag auf Zusammenführung von Beiträgen |
| Merge | Zusammenführung von Beiträgen |
+++
## Projekt anlegen
- individuelle Projekte aus dem professionellen Kontext (Daten, Code, Text)
-**Achtung!***Visibility Level* entscheidet über Sichtbarkeit nach außen
---
**Aufgabe**
Legen Sie ein eigenes Projekt in Ihrem Account an!
+++
## Projekteinstellungen - General
-**Permissions:***Welche* Bereiche des Projekts werden genutzt? *Wer* darf die Bereiche nutzen?
-**Advanced:** umbenennen, übertragen, löschen
+++
## Projekteinstellungen - Members
- Hinzufügen von Beitragenden
- Zuweisung von Rollen
---
# Arbeiten im Projekt
+++
## Exkurs: Markdown
https://dillinger.io/
- einfache Auszeichnungssprache für Texte
- kann mit HTML und LaTeX angereichert werden
- weit verbreitet im Netz
- kann mit [Pandoc](http://pandoc.org/) in zahlreiche Zielformate gewandelt werden
+++
## Exkurs auf Wunsch: Pandoc
https://pandoc.org/
Umwandlung zahlreicher Quell- und Zielformate ineinander
+++
## Weiter: Arbeiten im Projekt
- Hinzufügen einer README.md
- Beschreibung des Projekts
- Beispiele guter READMEs in namhaften Projekten bei GitHub
---
## Beispielprojekt
+++
## Szenario
Unsere Arbeitsgruppe hat den Auftrag bekommen, eine *Übersicht der Tiere dieser Erde* zu erstellen.
Hierfür müssen **Daten** gesammelt, **Texte** geschrieben und **Anwendungen** programmiert werden.
+++
## Gruppen
- Mit Gruppen in GitLab können Teams gebildet werden
- Gruppen können Untergruppen (*subgroups*) haben
- Projekte können in/für Gruppen angelegt werden
+++
## Projektmanagement
- Projektdefinition
- Projektplanung
- Strukturierung des Projekts
- Sammlung und Darstellung von Aufgaben/Arbeitspaketen
- Aufgabenverteilung
+++
## Das Wiki
- Jedes Projekt hat ein **Wiki**
- Inhalte im Wiki werden mit Markdown notiert
- Das Wiki ist ebenfalls ein Git-Repository und bietet alle Vorteile der dezentralen Bearbeitung
- Wikis eignen sich sehr gut zur
- Informationssammlung
- Projektdokumentation
- Hacks zur (fast) finalen Dokumentenerstellung mit *pandoc*, *GitBook* u.ä.
+++
## Issues
- Festhalten von Arbeitsaufträgen, User Storys, Fehlerberichten, Kundenwünschen etc.
- Diskussion über die Details
- Entsprechend der Idee von *User Storys* können mit Checkboxen *Tasks* definiert werden. Diese beschreiben die konkreten Aufgaben, die zum Einlösen der Story erledigt werden müssen.
+++
## Label
- Label sind frei definierbare "Etiketten" für Issues und ermöglichen übergreifende Ordnungskonzepte
- Aus Labeln können Listen im Board erstellt werden
+++
## Das Board
- Jedes Projekt hat ein Board
- sinnvolle Strukturierung von Issues z.B. gemäß einer Projektmanagementmethode (Kanban, Scrum o.ä.)
+++
## Zuweisung von Issues
- Issues können entsprechend der Aushandlung zwischen den Beitragenden zugewiesen werden
- Issues können an einen *Milestone* oder eine individuelle Deadline gebunden werden
- Issues können gelabelt werden
+++
## Branches
- Branches sind eigenständige Entwicklungslinien
- Ergebnisse aus Branches können in andere Branches **gemergt** werden
- Es ist sinnvoll, **Branches aus Issues** zu erstellen
- Branches sollten nach dem Mergen gelöscht werden