git config --global alias.lg "log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all"
git config --global alias.s "status --short -b"
git config --global alias.s "status -sb"
git config --global alias.stg "diff --name-only --cached"
git config --global alias.undo 'reset --soft HEAD^'
For Linux
git config --global alias.clip '!sh -c "git diff --name-only --cached | xclip -selection clipboard"'
For Mac OS
git config --global alias.clip '!sh -c "git diff --name-only --cached | pbcopy"'
git config --global credential.helper 'cache --timeout=3600'