[user]
  name = David Tomaschik
  signingKey = 0x5DEA789B

[core]
  excludesfile = ~/.gitignore
  editor = vim
  whitespace = trailing-space,space-before-tab
  pager = command -v delta >/dev/null 2>&1 && delta || less -eFiJM~ -j3

[color]
  diff = auto
  status = auto

[diff]
  tool = vimdiff
  colorMoved = default

[difftool]
  prompt = false

[alias]
  st = status
  last = log -1 HEAD
  # Thanks to
  # http://durdn.com/blog/2012/11/22/must-have-git-aliases-advanced-examples/
  logs = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate
  lg = log -p
  ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
  files = ls-files
  ls = ls-files
  lol = log --graph --pretty=format:'%C(yellow)%h%Creset %an: %s - %Creset %C(yellow)%d%Creset %Cblue(%cr)%Creset' --abbrev-commit --date=relative
  f = "!git ls-files | grep -i"
  logtree = log --graph --oneline --decorate --all

[push]
  default = current

[web]
  browser = chrome

[github]
  user = matir

# Site specific config
[url "https://github.com./"]
  insteadOf = "github:"
  insteadOf = "github://"

[url "ssh://git@github.com/"]
  pushInsteadOf = "github:"
  pushInsteadOf = "github://"

[url "git://gist.github.com/"]
	insteadOf = "gist:"

[url "git@gist.github.com:"]
	pushInsteadOf = "gist:"
	pushInsteadOf = "git://gist.github.com/"

[credential]
	helper = cache --timeout=36000

[receive]
	denyCurrentBranch = updateInstead

[merge]
	tool = vimdiff
	conflictstyle = diff3

[mergetool]
	prompt = false

[include]
	path = ~/.gitconfig.local

[pull]
	rebase = false

[init]
	defaultBranch = main

[interactive]
	diffFilter = command -v delta >/dev/null 2>&1 && delta || cat

[delta]
  navigate = true
  line-numbers = true
