Commit f4c29be5 authored by Axel Dürkop's avatar Axel Dürkop

Add Content

parent 2ac255f3
# Einrichtung von GitLab für die Kollaboration im Seminar
Die folgenden Schritte beschreiben **für Lehrende**, wie GitLab eingerichtet werden kann, um die Teilnehmenden langsam an ein transparentes Zusammenarbeiten heranzuführen.
<!-- untoc -->
## Inhalt
<!-- toc orderedList:1 depthFrom:2 depthTo:6 -->
1. [Anlegen einer Subgroup](#anlegen-einer-subgroup)
1. [Nutzung von GitLab zum Dateiupload](#nutzung-von-gitlab-zum-dateiupload)
1. [Feedback zu Commits](#feedback-zu-commits)
1. [Abgaben von Studierenden bemerken](#abgaben-von-studierenden-bemerken)
<!-- tocstop -->
## Anlegen einer Subgroup
1. Ein Master setzt die Rolle aller Teilnehmenden in der Gruppe des Kurses auf *Guest*. Damit ist gegeben, dass die Subgroups (s.u.) nicht gegenseitig einsehbar sind, bis das gewünscht wird.
1. Ein Master[^1] erstellt für alle Teilnehmenden eine Subgroup in der Gruppe des Kurses. Die Subgroup ist privat, damit sie nach außen nicht sichtbar ist. Sie wird nach dem Namen der Teilnehmerin benannt.
1. Anschließend macht der Master die jeweilige Teilnehmerin zum *Owner* in ihrer Subgroup. Damit erhält sie die Möglichkeit, selbst Projekte anzulegen und andere Teilnehmende zur Kollaboration einzuladen. Ferner kann die Teilnehmerin weitere Subgroups anlegen.
## Nutzung von GitLab zum Dateiupload
Um die Umgebung von GitLab kennen zu lernen und die Teilnehmenden zunächst nicht mit der steilen Lernkurve von Git zu überfordern, werden Dateien erst einmal in der Art eines einfachen Dateiuploads bereitgestellt.
1. Dazu richtet jeder Teilnehmer ein neues Projekt mit dem Namen *Studienleistungen* ein.
1. Anschließend erstellt er die *README.md*, da mit der ersten Datei im Repository überhaupt erst der Menüpunkt *Repository* sichtbar wird.
1. Nun wechselt der Teilnehmer auf die Ansicht *Repository* und erstellt einen Ordner mit dem Datum der Aufgabe, z.B. `zu-03-Mo-2017-04-24`. Es wird automatisch eine Datei `.gitkeep` angelegt, da leere Ordner in GitLab nicht zugelassen sind. Die Datei kann gelöscht werden, sobald eine weitere Datei existiert.
![Anlegen eines neuen Ordners im Repository](abb/ordner-anlegen.gif)
1. In den angelegten Ordner können jetzt Dateien hochgeladen werden.
![Hochladen einer Datei](abb/datei-hochladen.gif)
## Feedback zu Commits
Dateiuploads sowie das Anlegen neuer Ordner und Dateien in der Weboberfläche von GitLab gelten als Commits im Sinne von Git. Das macht es möglich, zu den hochgeladenen Dateien detailliertes Feedback zu geben. Die Teilnehmenden haben die Möglichkeit, auf jeden Kommentar zu antworten und ihn zu diskutieren.
In offeneren Szenarien können Seminarteilnehmende auch gegenseitig Feedback geben und auf diese Weise an transparente Kollaboration herangeführt werden.
![Feedback zu einem Commit kann zeilenweise und für das gesamte Dokument gegeben werden.](abb/feedback-geben.gif)
**Wichtig!** Die Kommentare zu einem Commit sind **nicht** unter *Files* zu sehen. Die entsprechende Datei muss immer über *Repository -> Commit* aufgerufen werden.
[^1]: Rolle in GitLab mit hohen Befugnissen
## Abgaben von Studierenden bemerken
GitLab kann im Zusammenspiel mit Mattermost so konfiguriert werden, dass das Dozententeam (Dozent_in, Tutor_in, techn. Hilfskraft) über hochgeladene Dateien und andere Ereignisse informiert werden.
Dazu sollte zunächst in Mattermost eine private Gruppe angelegt werden, der nur das Dozententeam angehört. So bleiben den Studierenden die dort geteilten Inhalte verborgen.
Anschließend wird in Mattermost über *Integrations -> Eingehende Webhooks* ein neuer Hook für den Kanal *Dozententeam* angelegt. Die generierte URL kann anschließend kopiert werden. Sie wird nun in GitLab gebraucht.
Der folgende Arbeitsschritt ist je nach Teilnehmer_innenzahl recht aufwändig, da er für jedes Projekt in einer Subgroup wiederholt werden muss.
Im Projekt *Studienleistungen* jeder Teilnehmer_in ist unter *Settings -> Integrations* der Punkt *Mattermost Notifications* anzuklicken. Anschließend wird das Kästchen *Aktiv* gesetzt und die kopiert URL aus Mattermost unter *Webhook* eingetragen. Nach dem Speichern der Eingaben kann mit *Test Settings* eine Testnachricht an Mattermost geschickt werden.
......@@ -7,13 +7,14 @@ Tutorials sind oft auch als Blogbeiträge zu finden, im Folgenden sind komplexer
## HTML und CSS allgemein
- https://www.html-seminar.de/einsteiger.htm | **Tipp!**, erklärende Texte, Codebeispiele, Projekte
- http://learn.shayhowe.com/html-css/ | **Tipp!**, erklärende Texte, Codebeispiele, in Form eines Kurses.
- https://developer.mozilla.org/de/Learn | Die Mozilla Foundation engagiert sich für ein offenes und freies Web. Sie betreibt daher auch eine große mehrsprachige Website zu den Themen des Webs. Für den Einstieg ist besonders die Unterseite [Learning the Web](https://developer.mozilla.org/de/Learn) zu empfehlen.
- http://learn.shayhowe.com/html-css/ | Erklärende Texte, Codebeispiele
- http://www.afterhoursprogramming.com/tutorial/HTML/Introduction/ | Erklärende Texte, Codebeispiele, Testoberfläche
## Layout
- http://de.learnlayout.com/ | **Tipp!**, ganz hervorragende Seite in Form eines kleinschrittigen Tutorials. Das Box-Modell wird dort auf sehr verständliche Weise erklärt. Auch die etwas trickreiche Positionierung mit `float` wird besprochen. Was fehlt, ist die neue Layouttechnik mit *Flexbox*.
- http://learn.shayhowe.com/html-css/positioning-content/ | Sehr gute und ausführliche Einführung in die Positionierung von Inhalten mit `float`.
## Listen, Menüs und Navigationen
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment