Git is a version control system (VCS). You probably have used a VCS in the past, for instance, mercurial and subversion. The goal of a VCS is to manage and keep track of different versions of your files.
In this class, we will use git and ANU gitlab for the distribution and submission of assignments. We strongly suggest that students do regular commits of their work and also regular pushes to ANU gitlab to take advantage of the remote backup of your changes over time.
If you’re new to git, try this fun and interactive tutorial: Learning Git Branching
Here are some other useful resources for git:
- Official documentation
- Some recipes to undo, fix and remove commits: this page helps you identify the problem you have and options to fix it. Note that, if you do not understand what the suggested commands do, you might make things worse.
- git reset: git reset is generally used to undo/discard changes. This stackoverflow answer explain very nicely how git reset works.