Preloader
Auf dieser Website werden Daten wie z.B. Cookies gespeichert, um wichtige Funktionen der Website, einschließlich Analysen, Marketingfunktionen und Personalisierung zu ermöglichen. Sie können Ihre Einstellungen jederzeit ändern oder die Standardeinstellungen akzeptieren.
Cookie Hinweise
Datenschutzregelung
26.01.2024

Git Cheat Sheet

Legende:
➜ Config
➜ Allgemein
➜ FuckUp Behebung

*Wofür?BefehlAnmerkungen + Optionen
 Nutzername
git config --global user.name "Vorname Nachname"
 
 Email

git config --global user.email vorname.nachname@agentur-77.de
 
 Editor
git config --global core.editor nano
WICHTIG: Editor muss für die Bearbeitung von commit messages konfiguriert werden
 Start eines Repos
git init
Git muss installiert und konfiguriert werden
 Remote repo auf Bitbucket eröffnen (WORK IN PROGRESS)
git remote add origin http://bitbucket.projekteverwaltung.de:7990/nameDesProjekts/nameDesRepos.git
Wenn ein Projekt initialisiert wurde, kann es direkt als Remote übertragen werden. So können andere auch am Projekt arbeiten.
 Status des Repos
git status
Regelmäßiger Check verhindert offene Konflikte im code.
 Branch erstellen
git branch NameDesBranch
Hier bitte an Gitflow orientieren. Also master,develop,feature/feature,release/version oder hotfix
 Branch wechseln
git checkout NameDesBranch
 
 Datei hinzufügen(nur chunk)
git add -p Ordner/NameDerDatei
Pro Tipp: vorher git status eingeben und den Pfad kopieren. Die Änderungen werden Block für Block überprüft und entweder dem Commit hinzugefügt oder als Änderung stehen gelassenen ( kleine Commits einzelner Funktionen ist das Ziel )
 Datei aus Stage herausnehmen(nur chunk)
git rm -p Ordner/NameDerDatei
 
 Alle Daten aus der Stage committen
git commit

WICHTIG: Editor muss vorher konfiguriert werden → Empfehlung Nano.

Öffnet den Editor zum bearbeiten der commit message. Wichtig: Der Titel soll weiterhin nicht länger sein als 50 Zeichen also kurz. Der Body kann ruhig ausführlicher sein und das Problem genau beschreiben.

 Git Commits hochladen
git push nameDesRepos nameDesBranch
Lädt Änderungen auf das repo hoch.
 Git Commits runterladen
git pull nameDesRepos nameDesBranch
Lädt Änderungen vom repo herunter.
 Branches mergen
git checkout nameDesBranchAufDenGemergedWird
git merge nameDesZuMergendenBranch
Im Normalfall wendet git hier einen fast forward merge an. Das heißt alle Commits, die getätigt worden sind, werden der history angehängt. Falls mergekonfikte bestehen sollten, können die Konflikte auch aus dem Terminal behoben werden.
 Branch löschen (wenn feature fertiggestellt ist)
git branch -D nameDesBranch
 
 Remote branches aktualisieren
git remote update origin --prune
Zum Aufräumen eines Repos.
 Datei aus dem Index nehmen
git update-index --skip-worktree <file>
Herausnehmen einer Datei aus dem Change Commit Zyklus. Die Datei wird zukünftig ingnoriert.
 Datei dem Index hinzufügen
git update-index --no-skip-worktree <file>
Hinzufügen einer Datei aus dem Change Commit Zyklus. Die Datei wird zukünftig wieder überwacht.
 Git Historie 
git reflog
 
 Git commitnachrichten sehen
git log
 
 Letzte Commit Nachricht bearbeiten
git commit --amend
 
 Speziellen Commit zurücknehmen
git reflog
git revert hashDesCommits
 
 Branch wiederherstellen zu Punkt X
git reflog
git reset HEAD@nummerDesHeads
ACHTUNG!: Du verlierst ALLE Änderungen, die du bis zu diesem Zeitpunkt getätigt hast. Es sei denn du krempelst den Header wieder um. Der commit ist noch da, aber du verweist auf den header eines früheren commits.
 Remote Branch löschen
git push origin --delete nameDesBranch
Das braucht man nur nach dem merge!
 Branch von Remote eröffnen
git branch -d nameDesBranch origin/nameDesBranch
Erstellt einen lokalen Branch mit Stand des Origin
 Patch erstellen
git format-patch HEAD@nummerDesHeads --stdout > bugfix.patch
Erstelle einen Patch für alle Änderungen SEIT X in Datei bugfix.patch
 Patch einspielen 
git am bugfix.patch
 
 Unstaged Files lassen sich nicht entfernen
> git rm --cached -r .
> git reset --hard
 

Hilfen im Zweifelsfall:

Git Tutorial
Git Dokumentation