Programmieren_1/git.md

75 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--
title: Git
description: Folien für Git in Programmieren 1
url: https://git.henriburau.de/tutorien/programmieren-1
header: Programmieren 1 **Tutorium**
footer: Henri Burau und Eva Meinen
-->
# Git
Ein Version-Control-System (VCS). Git funktioniert als
verteiltes System. Jeder Entwickler hat seine eigene Version des
Quellcodes auf dem Rechner, den er nach Bedarf mit anderen
Entwicklern synchronisieren kann.
---
## Idee
Als Entwickler besteht die Arbeit darin Dateien zu verändern. Also eine Datei
verändern und dann abspeichern, wieder und wieder. Häufig ist es wichtig eine
Historie dieser Änderungen zu haben. In einem Umfeld mit vielen Entwicklern
sollten die Änderungen anderen zur Verfügung gestellt werden.
In Git werden die Änderungen an Dateien in sogenannten `commits` festgeschrieben.
Diese enthalten den Namen des Authors, eine kurze Beschreibung der Änderungen
und die Änderungen an sich.
Diese `commits` lassen sich dann zwischen Entwicklern austauschen.
---
## Repository
Ein Ordner der unter der Versionsverwaltung von Git steht. Das ist zu erkennen an einem Unterordner `.git`.
![80%](https://git.henriburau.de/tutorien/programmieren-1/-/raw/master/img/git-folder.png)
---
## Remote-Repositories
Repositories die nicht auf dem eigenen Rechner sondern im Internet liegen. Ein häufig verwendeter Workflow, der `Centralized Workflow`, von Git beinhaltet das Benutzen von einem zentralen Remote-Repository. Dafür gibt es viele Anbieter, wie Github, Gitlab, Bitbucket und Gitea. Entwickler tauschen dann `commits` nicht untereinander aus, sondern synchronisieren sich mit dem zentralen Repository.
An der HAW haben wir einen eigenen Server für Git-Repositories [git.haw-hamburg.de](https://git.haw-hamburg.de).
---
## Git installieren
Für alle Betriebssysteme gibt es eine Downloadmöglichkeit auf der offiziellen Homepage des Gitprojekts: [git-scm.com](https://git-scm.com)
## Git benutzen
Allen Anfängern wird es empfohlen Git über die sogenannte `Git-bash` zu benutzen. Das Aufrufen des Programms geschieht über die Kommandozeile. Erst nachdem die Kommandos von Git verstanden wurden kann auch eine GUI verwendet werden.
---
## Schäfers Anleitung
Folgende Kommandos sollen eine einfache Benutzung von Git ermöglichen, auch ohne die Konzepte zu verstehen:
git add -A
git commit m "Notiz"
git checkout master
git pull -tags origin master
git merge dev
git add -A
git commit m "Notiz"
git push -tags u origin master
git checkout dev
git merge master