Most people who write programs or documents use version control even if they do so informally, saving versions as they go along. Maybe they create program_old.cc or something like programApr2019.cc. Their folders might get a bit cluttered, but with small, linear, one-file programs this method might be ok. Things become more complicated when the program involves multiple files or collaboration. As soon as there’s branching too, informal version control becomes error prone – quite possibly the weak-point of the whole project.
git is a popular version control program used in several CUED courses. It’s available on CUED’s Linux system. Online we have