[core]
    excludesfile = ~/.gitignore_global
[include]
    path = ~/.git_user
[master]
    autosetuprebase = always
[color]
    ui = auto
[push]
    default = current
[merge]
    tool = vimdiff
    conflictstyle = diff3
[alias]
    # Basics
    br = branch
    ck = checkout
    cl = clone
    cm = commit -m
    cma = commit -am
    ds = diff --staged
    g = grep -En
    gf = grep -Fn --
    gi = grep -iFn --
    st = status -s

    # Tweak defaults
    bra = branch -ra

    # List aliases
    la = "!git config -l | grep alias | cut -c 7-"

    # Pretty branch graph
    lg = log --oneline --abbrev-commit --all --graph --decorate --color
    # Graph with additional info (author, date)
    lga = log --graph --abbrev-commit --decorate --format=format:'%C(yellow)%h%C(reset) %C(bold red)%d%C(reset) %C(blue)[%an]%C(reset) %C(green)(%ai)%C(reset) - %C(white)%s%C(reset)' --all
    # Same but also list modified files
    lf = log --oneline --name-status --all --graph --decorate --color

    # pull rebase
    prb = pull --rebase