Learning Community der TUHH

Dokumentation: Workshop zu GitLab und GitBook


#1

Am 27.09.2017 haben wir einen Workshop zur Arbeit mit GitLab am Beispiel von GitBooks gemacht. @TinaCarmesin hat für alle Anwesenden und Abwesenden Notizen gemacht. Bitte ergänzt und fragt.

Workshopnotizen

Toolchain:

Gitbook

= static site generator
Gestaltung durch HTML möglich
Input -> Gitbook -> HTML Seite
Anlegen von Dateien in denen Text steht
Ausgabe als pdf möglich, auch über HTML und CSS gestaltbar; Ausgabe als epub geht auch

Markdown

= eine Auszeichnungssprache

Atom

= ein Texteditor
In Atom wird mit Markdown geschrieben
bietet eine Vorschau
Text kann in verschiedenen Formaten (pdf, epub, …) ausgegeben werden
liefert den Input für das Gitbook (Input -> Gitbook -> HTML Seite)

Node js

Auf Node js läuft das Generatorprogramm Gitbook
(Betriebssystem-> Software (in diesem Fall Node js -> Gitbook)

Gitlab

= Kollaborationsplattform
Gitlab -> Gitbook -> HTML Seite/pdf/epub

Gitlab ist die open source Alternative zu GitHub
Gitlab wird bekannter im open science Prozess (z.B. Daten zu Ebola)
Gitlab wird genutzt zur Softwareentwicklung

es wird genau gespeichert wer eine Änderung gemacht hat (blame und cherry pick möglich)

Beispielanwendung Software Entwicklung: Weiterentwicklung eines Open Source Skriptes und vorschlagen einer Änderung über einen Merch Request

Vereinfachung: Verlagerung des oben beschriebenen gibbook Prozesses auf einen Server des Rechenzentrums der TUHH:

Anwendung Gitlab am Beispiel: https://collaborating.tuhh.de/itbh/2017-09-27-gitlab-workshop

Repository: dort werden alle Dateinen gelistet
Issue: Auflisten der Aufgaben
Wiki: Wiki
Members: ermöglicht das einladen von Mitgliedern zu einem Projekt (interessant für die Lehre), dort kann auch eine Rolle zugewiesen werden, auch ein Enddatum, request access zu Projekten ist möglich

Dateiname Empfehlung: alles klein, keine Leerzeichen, keine Umlaute, Endung .md

Datei
Empfehlung für die Erstellung: Text in Atom verfassen, weil Vorschau möglich, dann Markdown Text aus Atom in diese Datei kopieren
Commit Message: Grund für die Änderung
Target Branch: einen wählen (Branches sind die Abzweigungen des Master; der Master ist geschützt)
Merge Request: Bitte um Einfügen der Datei mit dem Target Branch in den Master (Qualitätskontrolle)

Merge Requests: zeigt alle neuen Vorschläge (in der Lehre hier z.B. Feedback zum Schreibprozess oder Diskussion über Software)

Overview: zeigt Inhalte des Master an, dort erscheinen die angenommenen Merges

Repository -> Branches: zeigt alle Branches (die alten Branches sollten nicht weiter bearbeitet werden, am Besten löschen)

Repository -> Graph: zeigt die Aktivitäten der user grafisch ab

Nebenbranch: aus dem Master kann kein Gitbook gebaut werden, das geht nur über einen Nebenbranch (in diesem Beitspiel heißt dieser development)

CI/CD -> Environments: mit klick auf das Link-Symbol wird das Gitbook gezeigt; für jeden Branch wird ein Gitbook gebaut

Overview -> summary.md: hier müssen alle Dateien eingetragen werden, die im Gitbook angezeigt werden sollen z.B. [Dateiname](dateiname.md)

Git
Versionskontrolle

Gitkraken
grafisches Tool für Git


Session am 27.09.2017