Version control: CVCS, DVCS

Advantages

Version control systems allow developers to keep track of changes to their files, and help them collaborate with other developers. However, it is not only programmers who benefit from such a solution, as it might be important to keep track of iterations of any project. Keeping track of different versions of a 3D model, a PCB design or a simple user manual are all examples where VCSs are useful. There are numerous VCS solutions, two groups of which are CVCS and DVCS.

Centraized VCS

One version control solution is based on centralisation. The project is stored on a single server, from which all users work. If a change is needed, the developer borrows a file from the system, makes the change, and then uploads the updated version back to the system. A popular CVCS is Subversion (SVN).

Distributed VCS

Instead of centralisation, DVCS democratises the files to be managed. Each user stores the entire project and its history on their own machine, making it easier to work remotely, from multiple devices or with multiple developers. A popular DVCS is Git, it is widely used by small teams and big tech companies, as well.

Git

GitHub registration: https://github.com/signup

Download GitHub Desktop: https://desktop.github.com/download

Formatting the README.md file: https://docs.github.com/en/get-started/...