Github seems to be gaining in popularity amongst the hardware community – and that is a great thing. Github started as a software collaboration site, but is branching out into new disciplines all of the time. Last year they added STL support for 3D files. More recently, PSD support was added. As Github continues to grow, it is inevitable they will add support for almost every major file type (like Gerber files). Recently I’ve talked to more than one Tindarian that just getting started with Github. So what is Git and why should you use Github for your Tindie project?
Learn Git
Before learning about Github, we should start with Git.
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
The layman’s answer would be – a way to keep track of file changes over time. You work on a file, make a change, and then are able to quickly see the differences.
2 Reasons You Should Use Git
Git will let you easily keep track of the history of files. On more than one occasion, I’ve made a change to a file, and weeks later wanted to bring it back. I can quickly go back to restore that work. There are other ways to handle this, but Git is a highly efficient tool for keeping track of my changes (or ‘version control’ as it is called).
Collaboration. If you are working with other people, you’ll want a sane way to keep track of the changes you each make and ensure you are both working on the most recent version of a project. Git has a few clever solutions for this (forking/branches) which make this process incredibly simple.
The full documentation can be found here.
Git vs Github
This is something that can easily be confused so to just set the record straight:
- Git is the version control software.
- Github is a website for file hosting & collaboration that relies on Git for users to contribute their files.
Why Github?
Github is free for public file hosting. As most projects are open on Tindie, then this is a free solution for all of these projects.
Second, the community. Github has millions of members (probably including your friends). This is only growing as they support more and more file formats.
Finally, Github is also very easy to use, full featured, and constantly getting better. For 3D designers, I believe they have the largest STL library on the web (yes bigger than Thingiverse). As they add schematic support, it will be interesting to see how that changes hardware design.
3 ways to use Github for your Tindie projects (like Arachnid Labs)
1. Documentation – Many sellers use Github for free, documentation hosting. As an example, here are the instructions for setting up Arachnid Labs’ Minishift.
2. Source Code – The vast majority of projects on Tindie are open source. Sharing the source files & code are incredibly easy on Github (and FREE). Here are the source files for the highly successful, Re:load Pro.
3. Support – Github includes Issues for users to be able to report bugs or features they might like. On the Minishift, customers have been able to report and collaborate on an issue. Other customers are able to easily find others that have the bug, and work towards a solution.
But wait, there’s more!
There is plenty of more to mention about Github and Git, but hopefully this is an introduction. We honestly think they are beneficial for every Tindarian – from hardware engineers to 3D designers. As they release more and more supported file formats, you will only see more and more value.
PS
If there is interest, we can add more tutorials on Git/Github. We also know some of the fine folks at Github and might be able to get a Q&A between Tindarians and Github. If you have any questions, feel free to add them in the comments below.