"a distributed version control system ... keeps track of software revisions and allows many developers to work on a given project without requiring that they maintain a connection to a common network."
- Wikipedia
"Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency."
- git-scm.com
Really, it's a set of tools.
i.e., files and their history
i.e., a directory of files and subdirectories
e.g., code for features, not debugging
e.g., when unit tests pass, when code is stable
e.g., for stable code, for feature dev, for experimentation
e.g., to merge a feature branch into the master branch
e.g., to get code from a colleague
e.g., to deliver a feature
e.g., when you and another dev commit changes to the same line
init, add, checkout, status, commit, log
checkout, branch, merge