FTC Programming

GitHub Version Control

Covering basic GitHub Workflow and Setup

What is GitHub?

GitHub is a platform that allows you to control the versions and updates to your code over time. This is extremely helpful, especially with all the updates teams make to their code.

How to setup GitHub

Just go to GitHub.com and create an account. It’s that easy. We will go over the basics of GitHub, but with a robotics focus.

Forking the SkyStone Repository

All code on GitHub is stored in areas called repositories. FIRST has one for every SDK of every game. Search for FIRST-Tech-Challenge, and find the SkyStone repository. Click on Fork, and this creates a new repository for yourself. A Fork is basically a duplicate, with your modifications to it.


Go to the most inner of your TeamCode folder. This is where all your code should go. You can upload all the files from your RC here, and it will start tracking, “commits”. Commits are basically updates. Everything, from reformatting to adding a decimal will be tracked here.

GitHub Desktop

The easiest way to keep track of commits with GitHub is using GitHub Desktop. Desktop clones the repository to your computer, and every change made to that folder can be committed directly from the app.

Over time, you can see the amount of commits and who did what. It really shows how much work has been put into your code and everything you have changed.