Using version control tools like GIT is an essential skill for anyone that writes code, and plays an important role in doing research that is reproducable, collaborative, and transparent. Yet, like many other so-called Software Carpentries (SWCs: “basic lab skills for research computing”), GIT isn’t often taught in computer science programs, and rarely so outside them.

I’m passionate about giving students the tools they need to succeed, “filling in the blanks” between what their curricula teaches and what the real world requires. This presentation was created to introduce the concepts of version control as a foundational SWC skill and demonstrate GIT in four key use-cases.

This talk was orignally presented to members of Auburn’s student chapter of INFORMS, mostly graduate students. I hope to one day use it as part of a full course in SWC and other software engineering practices that are neglected but essential to students that will likely spend much of their career doing practical / scientific computing (whether they realize it now, or not). Software, after all, has been “eating the world” for at least 11 years now and shows no signs of retreat.

An embedded PDF viewer should show up below, but it can be finicky. Give it a second or try refreshing. Otherwise, you can view / download it directly on GitHub.