A Version Control System (VCS) records changes to files like documents or source code automatically, in order to allow easy recall of different versions. Git is a leading modern VCS that allows users to manage and navigate the history of their files across time, across collaborators, and even across parallel versions, all in a comprehensive and consistent manner. This workshop introduces the fundamentals of Git in an exercise-driven, hands-on format. The emphasis will be on using Git (and Github) for a solo workflow, but the material covered will arm users with the necessary background to start using Git collaboratively as well.
Workshop format: Presentation and hands-on
Target audience: This workshop is geared toward anyone looking to learn the basics of using Git to organize their work (and, conversely, how to make their workflows Git-friendly).
Knowledge prerequisites: This workshop presumes basic comfort with both the bash command-line and a text editor (e.g. nano, vim, emacs, Atom, Sublime, etc). No prior experience with Git or any other VCS is assumed. However, in order to prime their brains before the workshop, participants should read the following sections from “Pro Git”, a free online book available in both PDF and HTML formats (about 1–1.5 hours of reading):
- Required: Chapters 1, 2.1–2.5, 3.1, 3.2, 3.5, 6, 7.7
- Suggested: Chapters 2.7, 2.8, 3.3, 3.4, 3.6, 3.7, 6.7
Hardware/software prerequisites: Users will need to have access to a Linux/Unix-like command line and be able to run Git from there (this guide has instructions for how to do so for different operating systems). Unless they opt to work remotely on Adroit, participants should install Git on their local machines in advance (Chapter 1.5 of “Pro Git” has instructions). A (free) Github account at https://github.com is strongly recommended. THERE WILL BE NO TECHNICAL TROUBLESHOOTING DURING THE WORKSHOP ITSELF!
Learning objectives: Participants will leave with a solid understanding of Git foundations and a grasp over useful Git workflows. They will learn to use Git locally on their own computers, as well as in tandem with Github for solo workflows. This workshop will mainly focus on using Git individually and will only touch briefly on team workflows.