[user] email = tom@chillidonut.com name = Tom McKenzie signingkey = 896D4BE5 [color] branch = auto diff = auto status = auto [color "branch"] current = yellow reverse local = yellow remote = green [color "diff"] meta = yellow bold frag = magenta bold old = red new = cyan [color "status"] added = yellow changed = green untracked = cyan [help] autocorrect = 10 [alias] p = push pp = publish s = switch sc = switch create rb = pull --rebase rbc = rebase --continue rba = rebase --abort l = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(cyan)<%an>%Creset' --abbrev-commit --date=relative b = for-each-ref --count=10 --sort='-authordate:iso8601' --format=' %(color:green)%(authordate:relative) %09%(color:white)%(objectname:short) %(color:yellow)%(refname:short) %09%(color:white)%(upstream:track) %(contents:subject)' refs/heads --no-merged edit-conflicted = ! git diff --name-only | uniq | xargs $(echo $EDITOR) history = log -p -- pushf = push --force-with-lease pullall = ! git pull && git submodule update --init --recursive --remote publish = ! git push -u origin `git rev-parse --abbrev-ref HEAD` diverged = ! git log --graph --date=relative --oneline `git rev-parse --abbrev-ref HEAD` origin/`git rev-parse --abbrev-ref HEAD` fixup = "!f() { TARGET=$(git rev-parse "$1"); git commit --fixup=$TARGET ${@:2} && EDITOR=true git rebase -i --autostash --autosquash $TARGET^; }; f" last = rev-list -1 HEAD [core] excludesfile = ~/.gitignore_global whitespace = tab-in-indent,trailing-space,space-before-tab ignorecase = false # use delta if installed, else fall back to less (don't break git without delta) pager = command -v delta >/dev/null 2>&1 && delta || less -R [push] default = upstream [status] submoduleSummary = true [merge "npm-merge-driver"] name = automatically merge npm lockfiles driver = npx npm-merge-driver merge %A %O %B %P [pull] ff = only [advice] detachedHead = false [filter "lfs"] clean = git-lfs clean -- %f smudge = git-lfs smudge -- %f process = git-lfs filter-process required = true [include] path = ~/dotfiles/.gitconfig_difftastic condition = command -v difft >/dev/null 2>&1 [interactive] diffFilter = command -v delta >/dev/null 2>&1 && delta --color-only || cat [delta] features = decorations navigate = true line-numbers = true hyperlinks = true [delta "decorations"] ; commit-decoration-style = bold yellow box ul ; file-style = bold yellow ul file-decoration-style = bold hunk-header-decoration-style = bold [merge] conflictStyle = zdiff3 [credential "https://github.com"] helper = helper = !gh auth git-credential [credential "https://gist.github.com"] helper = helper = !gh auth git-credential