Version Control: Collaborating on Live Projects


As work culture becomes more open and collaborative, version control is increasingly important. From the simple example of “track changes” in Word, or creating a spreadsheet together in Google Sheets, office-based and remote workers are regularly collaborating in realtime and can easily see what others have done to improve code, texturize a logo or electrify language. It’s time for this technology to advance both in scope and accessibility. collab1.jpg

Version Control For Software vs. Hardware

Version control essentially means storing all progress and changes made by contributors to a project. It is often done by highlighting and annotating changes in code. These tracks are especially helpful in open-source programs and documents because they allow users to manipulate their final project to their needs: they can pick and choose from different aspects of the project’s chronology to tailor it exactly to their look.

Version control also helps the creators of projects. Open source work allows creators to see how their projects have been modified for various needs. It also inspires others to create thanks to its inherent teaching nature.

For software, this is simple: software, is, at its heart: text. Highlighting and annotating is simple. For hardware, it’s a whole different story.

How To Provide Version Control For Collaborative Hardware

The problem with version control and hardware is that hardware is visual: blueprints and schematics are the anatomy. Because these files are shared as image documents, it’s difficult to attain anything comparable to the version control we see in open source software. But that doesn’t mean it can’t be done.

GitHub is one of the best platforms for marking visual differences. GitHub includes a visual diff feature that analyzes different versions of the same image and notes them. To best take advantage of this, the proper materials must be uploaded. It’s essential that anyone wishing to collaborate on hardware familiarize themselves with what is necessary and the procedure for tracking.

Take advantage of these tools, and help others to do the same. If you host projects at Github, it’s easy for anyone to use their visual diff feature, provided that you provided data in the right formats.

The originator of the project must upload the new CAD, PNG and PDF output with every revision. CAD software automates creating the PNG and PDF outputs – familiarize yourself with how to do this and get into the habit of always including it. If necessary, also upload other standard output formats (STL, IGES, Gerber).

By including all of this information, collaborators will have all necessary information and can perform a visual diff function to accurately track changes by team members, thus communicating and collaborating better throughout the life of the project.