Fork me on GitHub

Source control

Source control systems, also known as version control systems, store code and other static files, such as images, with a history of the changes made to those files.

Why is source control necessary?

Version control systems allow developers to modify code without worrying about permanently screwing something up. Unwanted changes can be easily rolled back. Developers can merge changes with other developer's code through diff views.

These benefits exist on all software projects therefore version control is a necessity regardless of time size or the programming ecosystem used. Every project should immediately begin by using a version control system such as Git or Mercurial.

Source Control Systems

Git is a free and open source distributed version control system.

Mercurial is similar to Git, also a free and open source distributed version control system.

Source Control Third Party Services

GitHub is currently the most commonly used source control platform for using Git.

BitBucket provides free Git and Mercurial repositories for open projects and private repositories for up to five users. Users pay for hosting private repositories with more than five users.

Source Control Resources

Staging Servers, Source Control & Deploy Workflows, And Other Stuff Nobody Teaches You by Patrick McKenzie.

This lighthearted guide to the ten astonishments in version control history is a fun way to learn how systems developed over the past several decades.

A visual guide to version control is a detailed article with real-life examples for why version control is necessary in software development.

An introduction to version control shows the basic concepts behind version control systems.

What Is Version Control? Why Is It Important For Due Diligence? explains the benefits and necessity of version control systems.

About version control reviews the basics of distributed version control systems.


Next read the caching section.