Revision control for PCB design

Thread Starter

Warlockgoosy

Joined May 19, 2021
7
How do I properly maintain revision history for schematic and PCB design on Kicad or Eagle PCB. I have only worked on PCB designs locally, I would like to learn how to maintain a github repo for hardware designs?
 

Irving

Joined Jan 30, 2016
2,102
There isn't an easy solution for difference & merge in Eagle or KiCAD or most other schematic capture/PCB layout packages. I normally just spin off a new copy into another subdirectory for a major change or take a local copy before changing anything. I believe only Altium has such a feature.
 

andrewmm

Joined Feb 25, 2011
1,757
Version control as use din software which is "text based" is unusual in drawing packages

We use version control as a "referance" / "golden good" keeper.
i.e. we check in regularly, work in progress,
so at any time we can go back to a known state,
 

Irving

Joined Jan 30, 2016
2,102
Version control as used in software which is "text based" is unusual in drawing packages
Yes, I've seen it done in some CAD packages, most notably the online package OnShape and the cloud version of SolidWorks which support versioning at the project/object level but its relatively lightweight. It doesn't try to resolve the complexities of widget A integrating with widget B and versioning of the 'interface' which is open-ended and nebulous unlike in code where a rigidly defined API or a class definition for instance can be versioned independently of the underlying functional code and of the calling code.

I'd imagine that versioning of a schematic and then versioning of a component, its symbol, footprint and usage rules are more akin to code but would need a greater exposure of the internal structures to integrate version control any more fine grained than manually-versioning the top-level schematic and/or PCB layout files at a subdirectory level.
 
Top