[alias]
# one-line log
l = log --pretty=format:"%C(yellow)%h\\ %ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short
ls = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
a = add
ap = add -p
c = commit --verbose
ca = commit -a --verbose
st = status
save = commit -a -m
saveAll = "!git add -A && git commit -m"
send = push -u origin
filelog = log -u
fl = log -u
dl = "!git ll -1"
dlc = diff --cached HEAD^
# will output all your aliases
la = "!git config -l | grep alias | cut -c 7-"
# Rename [branch] to done-[branch]
done = "!f() { git branch | grep "$1" | cut -c 3- | grep -v done | xargs -I{} git branch -m {} done-{}; }; f"
# squash commits
#sq3 = "!git reset --soft HEAD~3 && git commit --edit -m $(git log --format=%B --reverse HEAD..HEAD@{1})"
#sq2 = '!git reset --soft HEAD~2 && git commit --edit -m"$(git log --format=%B --reverse HEAD..HEAD@{1})"'
gr2 = reset --soft HEAD~2
gr3 = reset --soft HEAD~3
# reset to remote
rr = "!git fetch origin && git reset --hard origin/master"