Version Control

Luke Anderson on Flickr

How do you keep track of many people working on the same set of code?

If you end up working on a software project with other people, you’re probably going to encounter version control systems. While there’s a number of version control systems out there right now, they all do basically the same thing: give programmers a way to share code with each other while staying on the same page.

Imagine for a moment you and two friends want to work on a game together. How are you going to do it? The simplest thing would be to just have one computer that’s the “work computer” and you work in-person together, maybe pair-programming or even taking turns coding. Of course, what about working on your own time or at your own home? It’s way more convenient to be able to write code whenever you have the time instead of having everyone get together.

What do you do instead? Well, the obvious thing to try might be emailing each other with the updated code every time you’re ready to share it. You can send the files that you change to each other and then download the code and put it in the right place.

This will work fine, if slightly annoyingly, as long as you always work on different files. But imagine if one of your friends decided to work on fixing the collision detection for your game, the same as you, and then emailed it out only minutes after you sent your own changes. Now you’ve got the tough problem of someone needing to figure out how your code conflicts.


Become a subscriber and get access to the rest of this article. Plus all our magazine articles.

Stories also include numerous links to help parents, kids, and teachers learn more. Get access today at just $15 per year!

Subscribe Today!

Also In The April 2017 Issue

Building and creating your tools with the Minecraft toolbox helps you survive the game.

Sensors give robots the senses humans have.

30+ ideas for all age holiday gifts, from books to apps to board games to VR and more.

There might be a reason that too-real robot and video game character creeps you out.

This programming language uses colors instead of text and punctuation to add and perform other tasks.

Knowing how passwords are cracked can help you create better passwords.

There are a number of strategies teachers (plus parents and students) can take to learn programming.

This project uses conductive thread to create a glove to activates your phone.

Software programming does neat things with language, in this case, mixing capital letters.

This Scratch game has lots of ways you can customize the game play. No cats were harmed in the making of this article either.

Links from the bottom of all the October 2017 articles, collected in one place for you to print, share, or bookmark.

Interesting stories about computer science, software programming, and technology for October 2017.