Version Control System & Git key points
To understand what Git is, it is important to understand what is version control system (VCS).
A VCS is a system used to track and manage changes to software code. There are typically three types of version control systems: local, centralized, and distributed.
Local VCS uses file locking to manage user access. The file is stored locally and can only be accessed by one user at a given time.
Centralized VCS has a master/remote server that has all the code, and a client/local machine that pulls the code or the current version of the code from the remote server to the local machine. This is a two-step structure. An example is Apache Subversion.
Distributed VCS functions almost like a centralized VCS, but instead of pulling code from the master/remote server to the client/local machine, there is a local master server where the code is stored. This allows developers to work independently without being connected to the remote master server. This is a three-step structure. An example is Git.
Git is a free distributed version control system that can be used without access to the internet. For more information, visit here.
In the three-step structure, there is a remote server repository, a local server repository, and a local server working area.
GitHub is one of the many source code managers that use the Git framework. Other source code managers include Bitbucket, GitLab, etc. Check out my GitHub key points series.