Find the Location of Global Git Configuration File
git config --list --global --show-origin
Popular Configurations
Better Branch Listing
git config --global column.ui auto
git config --global branch.sort -committerdate
Default to main
rather than master
init.defaultBranch main
Better Diff Algorithm
git config --global diff.algorithm histogram
Better Git Conflict with Three-way Diff
merge.conflictstyle zdiff3
Simpler Push
git config --global push.default simple # (default since 2.0)
git config --global push.autoSetupRemote true
git config --global push.followTags true
Better Fetching
git config --global fetch.prune true
git config --global fetch.pruneTags true
git config --global fetch.all true
Separate Git Configs for Personal and Work
[includeIf "gitdir:~/projects/work/"]
path = "~/projects/work/.gitconfig"
Better Submodules
status.submoduleSummary true
diff.submodule log
submodule.recurse true
Use Another Diff Tool
diff.tool difftastic
ReReRe
See: git rerere REuse REcorded REsolution
git config --global rerere.enabled true
“Remember this git conflict, and remember how I fixed it”