http://stackoverflow.com/questions/3528245/whats-the-difference-between-git-reset-mixed-soft-and-hard