Personally, I find these aliases a bit too terse.
Aliases are important for enhanced productivity, but shell aliases are too much. I find these git aliases much more comfortable:
alias.st=status
alias.co=checkout
alias.com=checkout master
alias.cam=commit -a -m
alias.cm=commit -m
alias.br=branch
push, pull, merge, rebase and the rest are infrequently used, so I don't alias them at all. Using shell aliases (as opposed to git aliases) is unjustified IMO, as is the horrible alias g='git'
which gives me the creeps.