This document provides an overview of revision control systems like Git and GitHub. It discusses what revision control is, some early systems like SCCS and RCS, and then focuses on more modern distributed systems like SVN, Git, and Mercurial. For Git specifically, it covers features like non-linear development, easy branching and merging, auditing of history, and distributed development. It provides instructions for getting started with Git locally and also hosting projects on GitHub. Finally it advertises an additional hands-on training session for working through more examples.