The Importance of Code Repositories

If you’re one of our clients, you’ve probably heard (or read) us mention the word repository, or “repo”. You may not realize how important a repo is to the development of your website. If you’re a programmer or a development team, and you’re reading this, we really, really, really hope you know this word, and that it’s a part of your everyday development routine. Yes, it’s THAT important. Let’s discuss!

What is a Code Repository?

The Merriam-Webster definition for repository is as follows: “a place, room, or container where something is deposited or stored.” That’s exactly what we’re doing with your code. It’s simply a magical place where your website’s files are stored. Not only is your code stored on your web server and on our own work computers, but it’s also stored on a repository server with a service like GitHub or BitBucket.

Why is a Code Repository so Important to Developers?

Curious Minds Media developers love our repos for several reasons. As previously mentioned, it’s another place to store your code. Our team can collaborate on the same source code without stumbling over each other. My colleague and I could be working on different parts of your website, saving our combined work on the repo, and making all that is right in the world possible.

Another lovely morsel is a feature called “branches.” For each website that we develop, there is a minimum of three branches. A dev branch, a staging branch, and a main (or master) branch. A branch is a basically a set of your source files. The dev branch is used specifically for development. The creation of new features, modification of current features, bug fixes, testing, updating, playing …etc. Anything that could possibly break your website is tested here. In fact, we often use a 4th, 5th, 6th…etc. branch, called a “feature” branch, as extra layers of organization for the development of new features. The staging branch is where we move the dev branch code before putting it on a staging server to share with you, our client, so you can review and test the work that we’ve done. When you’re satisfied, and any kinks are worked out, these finalized and approved changes are brought into the main branch. The main branch is the source code that your website actually runs on.

But what if something gets through the cracks during the staging process, and the main source code now has an error somewhere? Enter the code repository!

Why is a Code Repository so Important to You?

Version control to the rescue! Whenever we make any changes to your files, the previous version is preserved in your file version history. Wait, what? Every change is recorded so we can see exactly what was changed, and what files those changes reside in. This makes it much easier to find where errors may have been made. We can track down what was changed, fix those errors, and reuse previously used code if we need to revive something that was removed. We can even roll back your source code to a previous point in time in any branch history, and use it all over again so your website runs smoothly as we make those fixes.

This is why it is so utterly important that the development of your website has a code repository in use. You don’t need a team working on your site for this to be a vital requirement. Any responsible developer should be using a repo. In modern web development, there’s really no excuse for not using one. If your developer(s) aren’t using a code repo, I’m comfortable saying it’s probably past time to break up with them. You don’t need non-repo-using developers in your life.

About Curious Minds
We are a web development firm in New York and Chicago, providing development resources and consulting for websites and mobile apps since 2004.