Git is a powerful open-source revision control system that is increasing used by a larger number of software projects, including many CSE projects.
But while Git is power and flexible, it is not easy for most people to learn and use. In order to learn to use Git effectively, one must form a conceptual model based on the Git repository data-structure as a directed acyclic graph of connected commits and a set of algorithms for manipulating that data-structure. That view of learning and understanding git is reflected in this Git Tutorial and Reference Collection. This collection also contains a brief set of critical beginner Git usage tips that every Git user should know before getting started with Git.