Version Control System (VCS)

Tomilayo Jesse
3 min readNov 4, 2020

What is version control system? Version control system is a system category of software tools that helps you to make changes to your code and also keep the record of changes done to your code.

Local Version Control system, Centralized version control system, Distributed version control system are the three types of version control systems we have.

Local Version control system is one of the simplest forms and has a database that kept all the changes to files under revision control. Revision control is one of the most common VCS tools.

Centralized Version control system contains just one repository where user have their working copy. You need to commit to reflect your changes in the repository. When other users update their copy, they would see the changes made.

In Distributed Version control system, each users have their own repository which is the local repository. Committing your changes to the local repository will not give others access to the changes made. The changes made has to be pushed to the central repository for other users to have access to the changes made after they update.

Version control system serve the purpose of making work easily done simultaneously by multiple users, where users can carry out changes in the files. They can share the file to the rest of the team when ever they wish.

Also, version control provides access to historical version of a project which is an insurance against computer crashes or data loss.

what is git?

Git is a free, open source distributed version control system tool designed to handle everything from small to very large projects with speed and efficiency. Git was started by Linus Torvalds, the same person who created Linux. Git is similar to other version control systems — Subversion, CVS, and Mercurial to name a few.

what is GitHub?

Git is a command-line tool, but the center around which all things involving Git revolve is the hub (GitHub.com), where developers store their projects and network with like minded people.

Common terminologies used in GitHub includes:

Repository: A repository (usually abbreviated to “repo”) is a location where all the files for a particular project are stored. Each project has its own repo, and you can access it with a unique URL.

Forking a Repo: “Forking” is when you create a new project based off of another project that already exists. This is an amazing feature that vastly encourages the further development of programs and other projects.

Pull Request: After you've forked a repository, and want it to be recognized by the original developers. You can do so by creating a pull request. The authors of the original repository can see your work, and then choose whether or not to accept it into the official project. Whenever you issue a pull request, GitHub provides a perfect medium for you and the main project’s maintainer to communicate.

All these talk about how GitHub is ideal for programmers may have you believing that they are the only ones who will find it useful. Although it’s a lot less common, you can actually use GitHub for any types of files. If you have a team that is constantly making changes to a word document, for example, you could use GitHub as your version control system. This practice isn’t common, since there are better alternatives in most cases, but it’s something to keep in mind.

--

--