Although Git is the most popular version control system used in software development it is not explicitly taught in many Computer Science degree programs. Those who do teach it face challenges in helping students understand the concept of version control, the commands students use to perform various actions as well as a workflow for collaborative software development.

This panel will present four approaches for teaching Git, providing an overview of each approach, how it helps students learn Git and the challenges both students and faculty encounter using it. GitKit is a containerized version of an open source project where students work through the full workflow from forking a project to having a pull request accepted. The Shell Tutor provides a constraint-based tutoring system inside the student’s command-line environment. GitHub Education provides short, free courses that introduce students to the basics of GitHub and workflow concepts. OSSDoorway teaches a GitHub workflow using a gamified, quest‑based environment to support a first contribution.

The session is designed to allow ample time for attendees to ask questions to determine how various approaches might be helpful in their context. Panelists will provide links to their approaches so attendees can further investigate them after the session.