Git

Git is an open source popular distributed version control system (VCS) and is available for Mac OS X, Windows, Linux and Solaris. It is free and open source. Forget what you know about any other VCS.

Usage for hardware projects
All VCSs can handle text & binary files but cannot merge binary ones.

Git has a fairly steep learning curve, other version control systems might be more intuitive but are not as widely used. Only a few commands are needed, e.g. status, add, remove, commit, push, etc. and then usage is simple. Git works locally, a remote server is optional. When using a remote server, it can be located anywhere accessible via HTTP or SSH.

Have one repository per project. A repository is simply a folder with sub-folders for e.g. Hardware, Firmware, Documentation, etc. Then git is used to commit or push changes. This way git takes care of all the tracking, removing the need for keeping multiple versions of a project and any point in the development can be returned to.

GitHub, GitLab and other sites are git repository hosting service, they offer the functionality of git as well as adding their own features. Having a centralized repository allows people to collaborate on projects.

Cheat sheets

 * GitHub Cheat Sheet
 * Visual Git Cheat Sheet

Github

 * GitHub and GitHub tutorial