Skip to content

Instantly share code, notes, and snippets.

@jhamfler
Created July 4, 2017 13:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jhamfler/4e0c93341865f8093ecd6eb5baf6d6fb to your computer and use it in GitHub Desktop.
Save jhamfler/4e0c93341865f8093ecd6eb5baf6d6fb to your computer and use it in GitHub Desktop.
# Erste Schritte
Kommandozeile öffnen und Git konfigurieren:
```
git config --global user.name "Vorname Nachname"
git config --global user.email "vorname.nachname@stud.htwk-leipzig.de"
```
Repository clonen:
```
git clone https://gitlab.imn.htwk-leipzig.de/weicker/DATalytics.git
cd DATalytics
```
## Zur Bequemlichkeit (Linux)
SSH-Schlüssel erstellen, um nicht immer Passwörter eingeben zu müssen. Einfach mit Enter alles bestätigen:
```
ssh-keygen -b 8192 -t rsa
```
Schlüssel kopieren (alles bis auf die letzte Zeile (den Dateinamen/-ort)):
```
less ~/.ssh/id_rsa.pub
```
Dann auf https://gitlab.imn.htwk-leipzig.de gehen und einloggen. Auf https://gitlab.imn.htwk-leipzig.de/profile/keys gehen und den Schlüssel einfügen und auf "add key" klicken.
Jetzt das lokale Repo auf ssh umstellen:
```
git remote set-url origin ssh://git@gitlab.imn.htwk-leipzig.de:2244/weicker/DATalytics.git
```
# Grundlegendes
Datei erstellen:
```
nano mitarbeiter.txt
```
Änderungen zwischen dem Verzeichnis und dem lokalen Repository anzeigen:
```
git status
```
Dateien zum Stage hinzufügen:
```
git add mitarbeiter.txt # oder auch einfach .
```
Zum lokalen Repository hinzufügen:
```
git commit
```
Zum HTWK-Git-Server hochladen:
```
git push
```
Vom HTWK-Git-Server runterladen:
```
git pull
```
# Branches nutzen
Aktuellen Branch feststellen:
```
git branch
```
Neuen Branch erzeugen:
```
git branch Feature1
```
Zum Branch wechseln:
```
git checkout Feature1
```
# Fehlerbehandlung
Push auf remote Repository klappt nicht?
Änderungen vom Server holen:
```
git fetch
```
Änderungen anzeigen lassen:
```
git log --graph --pretty='%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --all
```
Unterschiede aller Dateien anzeigen lassen:
```
git diff <commitX> HEAD
```
Beide Versionen zusammenfügen:
```
git merge <commitX> HEAD
```
Der Branch vom Server ist in allen Aspekten besser als meiner?
```
git merge -X theirs bessererBranchVomServer
```
Der Branch vom Server ist viel schlechter als das, was ich gemacht habe?
```
git merge -s ours
```
Ausversehen auf den flaschen Branch einen commit gemacht? Branch resetten:
```
git reset HEAD~ # HEAD~~ geht 2 Commits zurück
```
Ausversehen einen falschen Branch erstellt?
```
git branch -d branchderausversehenerstelltwurde
```
Ausversehen eine Datei auf den Stage gepackt? Datei vom Stage entfernen:
```
git reset HEAD dateidienichtcomittedwerdensoll
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment