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

Initial commit

parent f9244045
2017-11-21-einfuehrung-gitlab-tuhh\.html
revealjs_deps/notes\.html
revealjs_deps/notes\.js
abb/Workflow-GitLab\.xml
This diff is collapsed.
# Einführung in GitLab
Axel Dürkop
**Workshop an der HAW Hamburg, 03. Juli 2018**
---
## Zur Person Axel Dürkop
- Magister der Philosophie
- wiss. Mitarbeiter am ITBH bei Prof. Dr. Sönke Knutzen (seit 2012)
- laufende Promotion zu *Offenheit in der webgestützten Lehre*
- acht Jahre freiberuflicher Trainer für Informationstechnologien
- zehn Jahre Theatermacher an deutschen Stadt- und Staatstheatern
- Computer und Programmierung seit 1983
---
# Überall: Git
- Git
- GitHub
- GitLab
- GitKraken
- GitBook
+++
## Git
- Verteiltes Versionskontrollsystem [Git](https://git-scm.com/)
- 2005 von [Linus Torvalds](https://de.wikipedia.org/wiki/Linus_Torvalds) entwickelt
- "Tracking" textbasierter Dateien
- Git lernen: [Try Git!](https://try.github.io/)
+++
## GitHub
- "Umschlagplatz" für Code, Texte und Daten
- Code: https://github.com/collections/open-source-organizations
- Daten: https://github.com/collections/open-data
- Science: https://github.com/showcases/science
- Texte: https://bundestag.github.io/gesetze/
+++
## GitLab
- Verteilte Versionskontrolle von [GitLab Inc.](https://about.gitlab.com/about/) zum [Selberhosten](https://about.gitlab.com/installation/)
- ermöglicht Workflow von der Idee zum fertigen Produkt
- An der TUHH: http://collaborating.tuhh.de/
- entstanden im Experimentierfeld der Hamburg Open Online University (HOOU)
+++
## GitKraken
- grafischer Client zur lokalen Verwaltung von Dateien
- Anbindung an entfernte Git-Dienste wie GitHub, GitLab, Bitbucket u.a.
+++
## GitBook
- Generator, der aus beliebig vielen Textdateien statische Webseiten und PDFs baut
- Verschiedene Projekte im Rahmen der HOOU wurden damit realisiert
- [BiotechAll](https://biotechall.rz.tuhh.de/)
- [Hop-on](https://hopon-newcomers.com/de/reader/de/index.html)
- [Biological Waste Treatment](https://learn2compost.rz.tuhh.de/)
- [Einführung in die Informationstechnik](https://fizban05.rz.tu-harburg.de/itbh/veranstaltungsskript-inf-sose2017/)
---
# GitLab von außen
https://collaborating.tuhh.de/
- Projekte
- Benutzer_innen
- Gruppen
---
# GitLab von innen
+++
## Registrieren und Anmelden
https://collaborating.tuhh.de/
- keine Zugangsbeschränkung an der TUHH
- kein Funktionsaccount nötig
- internationale Kollaboration möglich
- **Einschränkung:** Nicht-TUHH-Mailadressen dürfen keine eigenen Projekte anlegen.
+++
## Profil und Einstellungen
- **Profile:** Avatar, Bio und verbundene Accounts
- **Account:** Änderung des Benutzernamens
- **Emails:** Zusätzliche Emails
- **Notifications:** Einstellen der Dichte von Meldungen
- **Preferences:** Aussehen der Oberfläche
+++
## Grundbegriffe
| | |
| ------------- | ---------------------------------------- |
| Projekt | Organisationsheinheit |
| Repository | Ort für Dateien |
| Issue | Thema |
| Commit | Speicherung |
| Branch | Parallele Entwicklungslinie |
| 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
**Branches kosten nichts und können nach Herzenslust jederzeit auch zum Experimentieren und Spielen erstellt werden**
+++
## Merge Requests
- **Merge Requests (MR)** sind zu verstehen als
*Antrag auf Übernahme von Beiträge aus einem Quellbranch in einen Zielbranch*
- MR können
1. innerhalb eines Projekts von einem Branch zu einem anderen gestellt werden.
1. von einem geforkten Projekt (Kopie) auf das Quellprojekt (Original) gestellt werden.
- MRs haben großes Potential für die Qualitäts-kontrolle durch die Entwicklergemeinschaft
+++
## Merge
- **mergen** bezeichnet den Vorgang, einen *Commit* mit einem anderen zu verschmelzen
---
## Hack[a|er]space
https://community.tuhh.de/c/hackerspace
**jeden Mittwoch von 14:00 bis 17:00 Uhr**
im ITBH (Gebäude Q)
- Vorträge
- Beratung
- Experimentieren
- Wissen und Erfahrung teilen
- *Own Your Brought Device (OYBD)*
---
# Kontakt
**Email**: axel.duerkop@tuhh.de
**Twitter**: @xldrkp
**Mastodon**: @xldrkp@scholar.social
**GitLab**: https://collaborating.tuhh.de/users/xldrkp/projects
---
## Nutzungsbedingungen
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons Lizenzvertrag" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />Diese Präsentation von Axel Dürkop (ITBH an der TUHH) ist lizenziert unter einer <a rel="license" href="https://creativecommons.org/licenses/by/4.0/deed.de">Creative Commons Namensnennung 4.0 International Lizenz</a>.
Nutzen Sie diese Präsentation gern im Rahmen der genannten Lizenz, um auch anderen die Vorzüge von GitLab näher zu bringen.
<!-- ---------- Reserve ------------- -->
+++
## Forks
Als **Fork** wird die Kopie eines Repositorys bezeichnet.
---
**Aufgabe**
Forken Sie das Repository dieser Präsentation in Ihren Account!
+++
## Review Apps
GitLab bietet die Möglichkeit, auf Basis von Branches so genannten **Review Apps** zu generieren. Hierbei kommen Virtualisierungstechniken wie [Docker](https://de.wikipedia.org/wiki/Docker_(Software)) zum Einsatz.
**Review Apps** sind (vollständige) Anwendungen/Artefakte auf Basis von Branches. Sie dienen dazu, dem Kunden bzw. dem Team eine Vorschau auf die Implementierung einer Funktion oder Anforderung zu geben.
logo : assets/img/itbh_logo.png
theme: sky
theme-override : assets/css/PITCHME.css
published: true
README
\ No newline at end of file
# IuK-Schulung "Einführung in GitLab"
## Zielgruppe
Alle Mitarbeiterinnen und Mitarbeiter der TUHH
## Voraussetzungen
umfassende Erfahrungen im Umgang mit PC und Internet, Adminrechte auf einem mitgebrachten Rechner zur Installation von Software
## Inhalt
Software, Forschungsdaten und Texte können heute transparent und nachvollziehbar im Versionskontrollsystem Git entwickelt und verwaltet werden.
Mit Plattformen wie GitHub oder GitLab können dezentrale, internationale Teams gemeinsam an Projekten arbeiten, die mit Git verwaltet werden. Diese Form der Kollaboration verbreitet sich immer weiter in Forschung (Open Source, Open Science) und Lehre (Open Education), sodass gute Kenntnisse entsprechender Workflows und Techniken jetzt und in Zukunft sinnvoll und wichtig erscheinen.
Der Workshop führt in zwei Vormittagen ein in die Grundlagen von Git, GitHub und GitLab am Beispiel der TU-eigenen Installation https://collaborating.tuhh.de/ und betrachtet die Potenziale in verschiedenen Szenarien aus Forschung und Lehre.
## Trainer
[Axel Dürkop](http://itbh-hh.de/de/institut/mitarbeiter/axel-duerkop), Institut für Technische Bildung & Hochschuldidaktik (ITBH) an der [TUHH](https://www.tuhh.de/)
## Termin
Am 21. und 22. November 2017, jeweils 09:00 Uhr bis 12:30 Uhr
## Präsentation nutzen
Die Präsentation zur Schulung wurde in [Atom](https://atom.io/) mit dem Package [Markdown Preview Enhanced](https://shd101wyy.github.io/markdown-preview-enhanced/#/presentation) erstellt. Einen manuellen Export der Präsentation als PDF finden Sie [im Ordner `built`](built/2017-11-21-einfuehrung-gitlab-tuhh.pdf).
## Nutzungsbedingungen
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons Lizenzvertrag" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />Diese Präsentation von Axel Dürkop (ITBH an der TUHH) ist lizenziert unter einer <a rel="license" href="https://creativecommons.org/licenses/by/4.0/deed.de">Creative Commons Namensnennung 4.0 International Lizenz</a>.
Nutzen Sie diese Präsentation gern im Rahmen der genannten Lizenz, um auch anderen die Vorzüge von GitLab näher zu bringen.
body {
background: #fff;
}
.reveal {
font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
}
.reveal h1,
.reveal h2,
.reveal h3,
.reveal h4,
.reveal h5,
.reveal h6 {
font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
letter-spacing: -0.03em;
text-transform: none;
line-height: 1;
}
.reveal .slides {
font-size: 90%;
}
.reveal pre code {
padding: 15px;
}
.reveal code {
font-size: 0.9em;
}
.reveal .slides {
h1, h2, h3, h4, h5, h6 {
text-transform: none !important;
}
}
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