Lately some of my readers complained about troubles with downloading the code to my experiments. In order to fix this I introduced a dedicated download page. There I describe how to easily download any piece of code.
What I actually did is to copy all the code to Github. Thus you can not only download but also contribute if you want to.
Speaking of GIT: some of you might have noticed that some of my projects are relatively large compared to most Arduino projects. One of the secret ingredients is of course version control. If you do not yet use a version control system you might want to learn about one as soon as possible. Version control is for code what accounting is for money. Unless you have version control you will sooner or later lose track of your code changes. If you have version control and something breaks it is usually a lot easier to find out when the issue was introduced. It also is very reassuring to know that there is always “a way back” to latest stable version. Developing without version control is like burning all bridges behind you.
Having said that the question is which version control system to use. If you are developing in a team or a corporate environment this question is usually already solved. If you are alone the choice becomes harder. I settled for GIT for the following reasons:
- It is open source
- It is very easy to setup (git init)
- It is used for the Linux Kernel, thus:
- It will be sufficient for even my largest projects
- It will not go out of business soon
I will not tell you how to use GIT (or any other version control system) because there are lots of excellent (and free) tutorials already out there. If you want to start with GIT here are some resources that I found helpful.
- GIT homepage – the official home of GIT. It also contains a download to an introductionary book on GIT as well tutorials.
- GIT beginner tutorials – a nice list of GIT tutorials
- GIT cheat sheet – by Zack Rusin
- GIT cheat sheet – by Roger Dudler
- GIT cheat sheet– by Jan Krüger