[user]
	email = {{ .git_email }}
	name = {{ .git_alias }}
[pull]
	rebase = false
[push]
        default = current
[alias]
  a = add
  ahead-of-master = log --oneline origin/master..HEAD
  b = "!git checkout $(git branch | fzf)"
  c = commit
  cd = checkout develop
  cm = checkout master
  cp = cherry-pick
  f = fetch -p
  # Show incoming changes with upstream.
  inbound = !git remote update --prune; git log ..@{upstream}
  # Show outgoing changes with upstream.
  outbound = log @{upstream}..
  # log long format
  l = log --graph --topo-order --date=short --abbrev-commit --decorate --all --boundary --pretty=format:'%Cgreen%ad %Cred%h%Creset -%C(yellow)%d%Creset %s %Cblue[%cn]%Creset %Cblue%G?%Creset'
  m = merge
  nb = checkout -b
  p = push -u origin
  s = status
  track = "!for BRANCH in $(git branch -a | grep remotes | grep -v HEAD); do git branch --track \"${BRANCH#remotes/origin/}\" \"${BRANCH}\"; done"
  untrack = "!for BRANCH in $(git branch | grep -v '*'); do git branch -D \"${BRANCH}\"; done"
  work-in-progress = rebase -i @{u}
  sync = "!git untrack && git gc && git f && git track"
[include]
  path = ~/.gitconfig_custom.inc
[credential]
  helper = store
[credential "https://github.com"]
  helper = cache
[mergetool "meld"]
  cmd = meld "$LOCAL" "$MERGED" "$REMOTE" --output "$MERGED"
[merge]
  tool = meld