Appendix A. History of Git
No cautious, creative person starts a project nowadays without a backup strategy. Because data is ephemeral and can be lost easilyâthrough an errant code change or a catastrophic disk crash, sayâit is wise to maintain a living archive of all work.
For text and code projects, the backup strategy typically includes version control, or tracking and managing revisions. Each developer can make several revisions per day, and the ever-increasing corpus serves simultaneously as repository, project narrative, communication medium, and team and product management tool. Given its pivotal role, version control is most effective when tailored to the working habits and goals of the project team.
A tool that manages and tracks different versions of software or other content is referred to generically as a version control system (VCS), a source code manager (SCM), a revision control system (RCS), and several other permutations of the words revision, version, code, content, control, management, and system. Although the authors and users of each tool might debate esoterics, each system addresses the same issue: develop and maintain a repository of content, provide access to historical editions of each datum, and record all changes in a log. In this book, the term version control system is used to refer generically to any form of revision control system.
Git, a particularly powerful, flexible, and low-overhead version control tool that makes collaborative development ...
Get Version Control with Git, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.