git
Hopefully just the start of all the usefull commands for git ;)
config
# config for using rebase instead of merge
# with merge you get one additional commit when pulling while local commits exist
git config --global pull.rebase true
# enable autostashing for rebase
# this enables stashing when pulling which preserves uncommited changes
git config --global rebase.autoStash true