Explanation of commands here
cmd:
git config --global alias.aa "add --all"
git config --global alias.bv "branch -vv"
git config --global alias.ba "branch -ra"
git config --global alias.bd "branch -d"
git config --global alias.cp "cherry-pick"
git config --global alias.ca "commit --amend"
git config --global alias.co "commit -m"
git config --global alias.chb "checkout -b"
git config --global alias.cm "commit -a --amend -C HEAD"
git config --global alias.ci "commit -a -v"
git config --global alias.ch "checkout"
git config --global alias.di "diff"
git config --global alias.ll "log --pretty=format:\"%C(yellow)%h%C(red)%d\ %Creset%s%C(cyan)\ [%cn]\" --decorate --numstat"
git config --global alias.ld "log --pretty=format:\"%C(yellow)%h\ %C(green)%ad%C(red)%d\ %Creset%s%C(cyan)\ [%cn]\" --decorate --date=short --graph"
git config --global alias.ls "log --pretty=format:\"%C(green)%h\ %C(yellow)[%ad]%C(red)%d\ %Creset%s%C(cyan)\ [%cn]\" --decorate --date=relative"
git config --global alias.mm "merge --no-ff"
git config --global alias.st "status --short --branch"
git config --global alias.tg "tag -a"
git config --global alias.pu "push --follow-tags"
git config --global alias.un "reset --hard HEAD"
git config --global alias.uh "reset --hard HEAD^"
git config --global alias.gconfig "config --global"