alias g="git"
__git_complete g _git # enable git autocompletion (braches, etc.)
alias gc="git commit -am"
alias gp="git push"
__git_complete gp _git_checkout # checkout is more useful than _git_push because it autocompletes the branch
alias ga="git add -A"
alias gd="git diff"
alias gb="git branch"
alias gx="git checkout"
__git_complete gx _git_checkout
alias gs="git status"
alias gl="git log"
gc = git checkout
gs = git status
etc...