Modern Git setup with SSH signing, delta diffs, and security-first defaults.
gitconfig - Main configurationgitignore - Global ignore patternsgitmessage - Commit templateinstall-git-hooks - Hook installerpre-commit-hook - Validation script (includes Gitleaks secret scanning)setup-git-signing - GPG/SSH setup./src/git/install-git-hooks # Install hooks
./src/git/setup-git-signing # Configure SSH signing
Defined in gitconfig under [alias] (used as git <alias>):
git s # status -sb
git l # log --oneline --graph --decorate -20
git undo # reset --soft HEAD~1
git amend # commit --amend --no-edit
git wip # add -A && commit -m 'WIP'
Shell shortcuts (gs, ga, gc, gp, gl, gpl, โฆ) are separate zsh
aliases in src/zsh/aliases.zsh.
[gpg]
format = ssh
[user]
signingkey = ~/.ssh/id_rsa.pub
10x easier than GPG - no key expiration, already have SSH keys.
Beautiful side-by-side diffs with syntax highlighting:
[core]
pager = delta
[delta]
side-by-side = true
line-numbers = true
[transfer]
fsckobjects = true # Validate all objects
[commit]
gpgsign = true # Sign all commits
Donโt use GPG unless required - SSH signing simpler, GitHub native.
Keep aliases minimal - Had 50+, nobody remembered them.
Donโt hardcode paths - Hooks check multiple config locations.
Use zdiff3 for merges - Shows common ancestor, clearer than diff3.
Gitleaks blocking commits: False positive? Use Gitleaks default configuration or create .gitleaks.toml in project root.
Delta not working: Install with brew install git-delta.
SSH signing fails: Run ./setup-git-signing to configure.
See GitHub SSH Signing Docs for more details.