4. Version Control#

  • Why use version control

  • Solo use of version control

  • Publishing your code to GitHub

  • Collaborating with others through Git

  • Branching

  • Rebasing and Merging

  • Debugging with GitBisect

  • Forks, Pull Requests and the GitHub Flow


Total time: 2 hrs 25 minutes

Teaching notes#

If you are teaching this course, please remove any .gitconfig files you might have in your home directory. It is fine to restore them once you’ve finished teaching but you may otherwise have settings that interfere with the examples shown here.


Classroom exercises are included inline in the module. We recommend that instructors schedule the exercises to be done in groups during breaks in the taught content. However, it is important that participants also have some time away from their screens. Exercises can also be left as self-paced homework assignments if preferred.