Git Server¶
git config --global init.defaultBranch main
Git Client¶
https://blog.gitbutler.com/how-git-core-devs-configure-git/
verhindert dass Windows Zeilenenden zu CRLF umwandelt
Unix:
git config --global core.autocrlf input
Windows:
git config --global core.autocrlf true
ortiert Tags nach Version für bessere Übersicht
git config --global tag.sort version:refname
listet Branches nach letztem Commit-Date sortiert (neueste zuletzt)
git config --global branch.sort -committerdate
Verwendet einen besseren Diff-Algorithmus für lesbarere Änderungen
git config --global diff.algorithm histogram
Hebt verschobenen Code in Diffs hervor
git config --global diff.colorMoved plain
Erkennt umbenannte Dateien in Diffs
git config --global diff.renames true
Pusht nur den aktuellen Branch zu seinem Upstream
git config --global push.default simple
Verknüpft neue Branches automatisch mit Upstream beim ersten Push
git config --global push.autoSetupRemote true
Verwendet VS Code als Standardeditor für Git
git config --global core.editor "code --wait"
Pusht Version Tags zusammen mit Commits
git config --global push.followTags true
Löscht entfernte Tracking-Branches, die nicht mehr existieren
git config --global fetch.prune true
Entfernt veraltete Tags lokal beim Fetch
git config --global fetch.pruneTags true
Holt alle Remotes statt nur origin
git config --global fetch.all true
Zeigt Diff im Commit-Editor für bessere Übersicht bei merges zum beispiel
git config --global commit.verbose true
Verwendet Rebase statt Merge beim Pull, hält den Verlauf sauber
(Kann Konflikte verursachen, die schwieriger zu lösen sind )
git config --global pull.rebase true
Git Attributes¶
*.php text eol=lf