See also "Learn Git Branching": http://pcottle.github.io/learnGitBranching/?demo

The Ungit[1] gui can also help you to visualize git operations like merging and rebasing commits. Here's the youtube demo: https://www.youtube.com/watch?v=hkBVAi3oKvo.

[1]: https://github.com/FredrikNoren/ungit