Popular git config options Note
Julia Evans

Popular git config options

- Pull Handling: pull.ff only or pull.rebase true to avoid creating merge commits when upstream branch diverges. - Merge Conflict Readability: merge.conflictstyle zdiff3 enhances merge conflict visibility by displaying the original code in the middle. - Automated Commit Modification: rebase.autosquash true combines fixup! commits with their targets during rebasing. - Automatic Stashing: rebase.autostash true runs git stash before and after rebasing. - Push Automation: push.default current or push.default simple pushes the current branch to a matching remote branch; push.autoSetupRemote true sets up tracking for the first push. - Default Branch: init.defaultBranch main creates a main branch instead of master in new repositories. - Commit Message Enhancement: commit.verbose true displays the commit diff in the commit message editor. - Conflict Resolution Automation: rerere.enabled true remembers and automates merge conflict resolutions. - Autocorrect: help.autocorrect 10 allows Git to run autocorrections after a specified delay. - Diff Visualization: core.pager delta uses a syntax-highlighting diff viewer; diff.algorithm histogram improves function reordering visibility. - Global Gitignore: core.excludesfile specifies a global gitignore file. - Separate Git Configs: includeIf allows different configurations for personal and work repositories. - Data Corruption Prevention: transfer.fsckobjects and related settings detect and prevent data corruption. - Other Notable Options: Blame ignore, branch sorting, color settings, editor selection, commit cleanup, core settings, diff tools, merge settings, push follow tags, rebase safety, and log date format.