This session builds on the previous one on Version Control with Git to introduce important concepts of collaborative software development.
We will introduce Git concepts that become relevant when we work as part of a team. As we discuss different possible workflows, we will see how developing test suites is an essential part of scientific programming and how Github can integrate with tools like Travis or Jenkins to help automate the testing process in collaborative (or solo) projects.
Participants will leave knowing the commands and workflow to use Git and Github collaboratively in group projects. They will also learn how to integrate Github with other software development tools.
Basic facility with the bash command-line (covered in the earlier “Intro to the Linux Command Line” session). Participants should have experience with Git, at least in the context of tracking their own solo projects (covered in the earlier “Version Control with Git” session).
Participants should have Git installed on their local machines and should have a Github account. This workshop is conducted largely on the command line, so participants must also have access to a Linux/Unix command line. Mac and Linux users already have this. Windows users can either install an SSH client and connect remotely to Adroit, or they can enable access to a Linux command line on their laptop (options include Cygwin, Git Bash, the Windows Subsystem for Linux, etc).