The URI of TUHH Docker Registry changed from "docker.rz.tu-harburg.de:5000" to "docker.rz.tu-harburg.de". Please update your gitlab-ci.yml files if you use images from this registry.

Commit 845d146b authored by Axel Dürkop's avatar Axel Dürkop

Update Content

parent 6f3448c9
......@@ -42,6 +42,7 @@
* [Spickzettel](material/typen/cheatcheets.md)
* [Referenzen](material/typen/referenzen.md)
- [Sitzungsmaterial](material/sitzungsmaterial/einleitung.md)
- [Studienleistungen mit GitLab hochladen](material/sitzungsmaterial/studienleistungen-in-gitlab-hochladen.md)
- [Experiment: Client-/Serverkommunikation](material/sitzungsmaterial/analyse-client-server.md)
## Referenzen
......
# Studienleistungen in GitLab hochladen
Die folgende Anleitung erklärt,
- wie Sie GitLab für den Gebrauch in der Veranstaltung einrichten
- wie Sie wöchentlich Ihre Studienleistungen hochladen
- wie und wo Sie Feedback auf Ihre Arbeit erhalten
- welche Möglichkeiten der Kollaboration mit anderen Sie auf diese Weise haben
<!-- untoc -->
## Inhalt
<!-- toc orderedList:0 depthFrom:2 depthTo:6 -->
* [Grundsätzliches zu GitLab](#grundsätzliches-zu-gitlab)
* [Die eigene Subgroup finden](#die-eigene-subgroup-finden)
* [Projekte anlegen](#projekte-anlegen)
* [Ordner anlegen](#ordner-anlegen)
* [Dateien hochladen und austauschen](#dateien-hochladen-und-austauschen)
* [Dateien hochladen](#dateien-hochladen)
* [Dateien austauschen](#dateien-austauschen)
* [Feedback bekommen und darauf antworten](#feedback-bekommen-und-darauf-antworten)
* [Feedback bemerken und anzeigen](#feedback-bemerken-und-anzeigen)
* [Andere zur Mitarbeit einladen](#andere-zur-mitarbeit-einladen)
<!-- tocstop -->
## Grundsätzliches zu GitLab
GitLab ist wie GitHub eine browserbasierte Software, die dafür gedacht ist, gemeinsam an Text- und Codeprojekten zu arbeiten. Im ersten Teil der zweisemestrigen Veranstaltung *Einführung in die Informationstechnik* werden wir nicht alles ausreizen, was mit der Software möglich ist, sondern uns in kleinen Schritten diesen Möglichkeiten nähern.
Hinter GitLab steckt [die Versionskontrollsoftware Git](#). Was damit wiederum möglich ist, ist Gegenstand des zweiten Semesters - für Neugierige auch früher - und spielt im folgenden noch keine Rolle.
Die Motivation, GitLab für diese Veranstaltung einzusetzen, liegt darin, dass zum einen Kenntnisse von Git, GitHub und GitLab mittlerweile vorteilhaft, wenn nicht sogar erforderlich sind. Zum anderen bietet GitLab eine hervorragende Möglichkeit, Feedback zu Texten, Code- und Markupdateien zu geben. Darum geht es in erster Linie in den folgenden Schritten.
## Die eigene Subgroup finden
Für alle Teilnehmer_innen wurde ein so genannte Subgroup in GitLab eingerichtet. Sie ist der Subgroup der Veranstaltung, [itbh-inf-sose2017](https://collaborating.tuhh.de/itbh-inf-sose2017), untergeordnet. Eine Subgroup gibt dem *Owner*, also dem jeweiligen Teilnehmer, volle Rechte als *Master* dieser Gruppe. Er/sie kann andere einladen, Projekte anlegen und verschiedene andere Operationen durchführen.
Die eigene Subgroup findet man am besten durch den Einstieg in die Gruppe der Veranstaltung, [itbh-inf-sose2017](https://collaborating.tuhh.de/itbh-inf-sose2017) und anschließend durch einen Klick auf *Subgroups*.
![Screenshot](#)
## Projekte anlegen
Benutzer_innen in GitLab können eine bestimmte Anzahl von Projekten anlegen, in der Regel fünf.
Im folgenden werden Sie ein neues Projekt anlegen und ihm den Namen *Studienleistungen* geben. Hier kann alles hochgeladen werden, was Sie im Laufe der kommenden Sitzungen erarbeiten.
Eine Beschreibung ist optional. Achten Sie darauf, dass das Projekt *Private* ist, dann hat niemand außer eingeladenen Benutzer_innen Einsicht in Ihre Arbeit.
Erstellen Sie anschließend noch eine Datei `README.md`, in die Sie z.B. folgenden Text eintragen:
```Markdown
# Studienleistungen
Hier lade ich meine Studienleistungen hoch.
```
Ohne eine erste Datei werden einige entscheidende Navigationselemente Ihres Projekts nicht angezeigt.
Die folgende Animation zeigt noch einmal das Anlegen eines Projekts:
![Anlegen eines Projekts in GitLab](abb/projekt-anlegen.gif)
## Ordner anlegen
Sie können im Browser beliebig viele Ordner anlegen. Beachten Sie, dass dabei immer eine Datei `.gitkeep` entsteht. Das ist dadurch begründet, dass Git keine Ordner ohne Inhalt überwachen kann. Stören Sie sich nicht an der Datei, sie tut nichts.
**Vorschlag für ein Ordnungssystem.** Legen Sie zu jedem Auftrag einen neuen Ordner mit der Namenskonvention `zu-[Zahl der kommenden Veranstaltung]-Mo-[JJJJ-MM-TT]`, also z.B. `zu-[03]-Mo-2017-04-24`. Darin können Sie weitere Ordner anlegen, die Sinn machen.
![Anlegen eines Ordners in GitLab](abb/ordner-anlegen.gif)
## Dateien hochladen und austauschen
Git funktioniert nur mit text- bzw. zeilenbasierten Dateien. Alle binären Dateien und Dateien, die in Containern verpackt sind, können mit Git nicht detailliert unterschieden werden. Was das konkret bedeutet, wird weiter unten noch erklärt.
Laden Sie daher **keine Word-, LibreOffice- und PDF-Dateien** hoch. Sie werden im Laufe der Veranstaltung lernen, dass sinnvoll ist, auch Textdateien als einfachen Text anzufertigen und mit [Markdown](#) zu formatieren. Aus Markdown-Dateien können Sie anschließend Word-, LibreOffice- und PDF-Dateien erzeugen. Sogar HTML-Dateien entstehen aus Markdown.
### Dateien hochladen
Navigieren Sie zunächst in das entsprechende Projekt, hier *Studienleistungen*, und anschließend in den Ordner, in den Sie die Dateien hochladen wollen.
Wählen Sie nun über den Button mit dem "+"-Zeichen die Option *Upload file*. Sie werden aufgefordert, eine oder mehrere Dateien per Drag & Drop oder durch Auswahl im Finder/Explorer hochzuladen. Den Upload können Sie nach Wunsch noch mit einer Beschreibung kennzeichnen, das ist aber nicht zwingend notwendig.
**Wichtig!** Laden Sie keine ZIP-Dateien hoch, da GitLab diese nicht entpackt. Ein Feedback auf Ihre Arbeit ist so nicht möglich!
### Dateien austauschen
Dateien können in GitLab auf ähnliche Weise ausgetauscht werden, wie sie auch hochgeladen werden. Dabei ist folgendes zu sagen und zu beachten:
- Es können keine kompletten Ordner ausgetauscht werden.
- Dateien können nur einzeln gelöscht werden.
- Dateien gleichen Namens können nicht durch erneuten Upload überschrieben werden, dazu ist das folgende Vorgehen notwendig.
Auch wenn das zunächst einmal unkomfortabel erscheint, ist es GitLab nicht wirklich anzulasten, denn eigentlich erfolgt der Up- und Download von Dateien und überhaupt die gesamte Kollaboration an einem Projekt auf eine andere Art und Weise, z.B. mit [GitKraken](https://www.gitkraken.com/) oder ähnlicher Software. Wir kommen dazu im zweiten Semester.
Um eine Datei auszutauschen, klicken Sie auf den Namen der Datei, um sie anzuzeigen. Rechts über der Datei finden Sie den Button *Replace*. Wenn Sie ihn klicken, folgt ein analoger Vorgang wie beim Upload von Dateien.
## Feedback bekommen und darauf antworten
Wenn Sie sich fragen, warum wir den ganzen Aufwand mit GitLab betreiben und nicht weiterhin per Mail arbeiten oder gar Dateien in einer Dropbox teilen: Das Killerfeature haben Sie noch nicht gesehen! Da Git zeilen- und wortweise Änderungen verfolgen kann, lassen sich diese Zeilen detailliert kommentieren. Dadurch wird für Sie als kommende Lehrende, aber auch für das Dozententeam dieser Veranstaltung eine Form von Feedback möglich, die mit anderen Kommunikationstools wie Mail und Dropbox nicht möglich ist.
Die folgende Animation vermittelt einen Eindruck von den Möglichkeiten, über Zeilen eines Textes oder HTML-Dokuments zu diskutieren:
![gif](abb/feedback-geben.gif)
## Feedback bemerken und anzeigen
## Andere zur Mitarbeit einladen
......@@ -55,5 +55,3 @@ Sie haben ein erstes Formular mit HTML und CSS erstellt und sich [mit dem Formul
* Geben Sie die finale Version am **Sonntag, d. 07.05.2017**, ab.
**Wichtig!** Die Abgabe erfolgt bitte **nicht mehr per Mail**, sondern wie [in der Anleitung "Studienleistungen in GitLab hochladen"](#) beschrieben. Nur so kann das Dozententeam detailliertes und konstruktives Feedback an Ihrem Text leisten!
**Wichtig!** Legen Sie für das Exposé ein eigenes Projekt mit dem Namen *Sechszeiler* an!
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