How to manage large projects with multiple PCBAs

We’ve been asked the question, “how can I best manage large complex projects with multiple PCBAs?” Here’s an overview.

PCBA background

One of the most essential features of revision control and Product Lifecycle Management (PLM) is to ensure that the right product is being built using the right dependencies, even when those dependencies are being actively developed.

Most designs are assemblies and require multiple PCBAs, cable harnesses, and assembly instructions. Complex designs are created with multiple levels of sub-assemblies.

You can create repos for each of the components and bring them all together into a separate upper-level repo. Each of the sub-repos can be developed independently and then integrated when they are ready.

You’re able to create Git submodules for the sub-repos.

AllSpice.io team
| Co-Founder & CEO
| Co-Founder & CTO

,

| Co-Founder & CTO
| Co-Founder & CEO
March 25, 2026

Types of files that can be used in a submodule

Product Lifecycle Management (PLM) systems typically include anything that changes the form, fit, function, cost, or production yields/speed. Keeping all the information in one assembly repo cuts down on production and assembly errors. It helps with knowledge transfer so all the stakeholders genuinely understand what is being built and how. Here’s a breakdown:

  • PCBA projects
  • Schematics
  • Test procedures
  • Manufacturing information
  • Assembly instructions
  • Test firmware
  • Production firmware
  • Test software
  • Cable harnesses
  • Enclosures
  • Test station
  • Datasheets

Before we dive into how to use submodules, let’s consider the different strategies and their pros and cons.

What is a monorepo in hardware?

Storage of multiple hardware projects.

Just like in software, a monorepo in hardware is a repository where multiple projects are stored. It is possible to use a monorepo with separate files or subfolders for each sub-assembly and to create commits into the one repo whether sub-assembly A or sub-assembly B are modified.

This approach is best used for smaller, simpler projects developed and maintained by a few people at most. Revision control works best when each subproject is modified independently so that each commit only affects a single subproject. Modifying more than one project per commit is a large vector for bugs, especially if changes need to be reverted or are part of a complex merge.

Monorepos are definitely not recommended if one of the sub-projects is used in multiple higher-level assemblies. Unrelated assemblies will get commits when they don’t change form, fit, or function. It becomes especially challenging when one upper-level assembly requires one revision of PCBAs, and a different assembly requires a newer revision. Keeping these all in one repo invites extra work and mismatched files.

What are subtrees in hardware?

Git Subtrees actually come in two flavors, the Git subtree merge strategy and the Git-subtree command. They both refer to a strategy similar to monorepos where the separate projects are kept in subdirectories.

Unlike a monorepo, with a subtree, you can commit, branch, and merge alongside your project any way you want. You can even extract all of your version history at any time and create a new repo using any specific version.

The Git subtree merge strategy, on the other hand, cannot extract the version history.

Some of the downsides of subtrees are similar to monorepos in that it is up to the user to commit the files atomic to their subprojects. It is very easy to blend commits between a project and its subdirectory dependencies which makes for messy version control. If there is a related change to the two sets of files, it is recommended to make two separate commits for the same revision control action so that the changes can be separated.

Since there are no metadata files like .Gitmodule, users might not even be aware that the subfolders are subtrees that require their own set of processes and disciplines.

Many software developers prefer subtrees over submodules. However, the submodule process is the most accurate analog to traditional hardware PLM strategies.

How do you use submodules in electrical engineering?

Submodules tied to a specific revision of files, allowing PCBAs to be efficient.

Submodules have the benefit of being tied to a specific revision of files that won’t change no matter how much development is happening in the repo. Prototypes and production PCBA revisions can be consistently manufactured with the peace of mind of knowing you have the right files.

Subrepos have a slight downside as they are more complicated than operating a monorepo, but with tools like TortoiseGit, you don’t have to learn the command line interface (CLI).

Another quirk with submodules is that it’s easy to clone or pull a submodule without initializing or updating the directories and be left with empty folders. This can be a benefit if your project is large and only the needed files are downloaded.

Keep reading the step-by-step guide

Want to learn more about how to manage large projects with multiple PCBAs? Read our extensive, step-by-step, knowledge-base tutorial here. It includes more in-depth best practices, along with screenshots of how they can be put into practice within AllSpice’s platform.

Table of contents

Newsletter

Be part of our hardware community for occasional engineering resources, guides, and events.
Headshot of a team member

Valentina Ratner

Co-Founder & CEO

At heart, I’m an engineer. I love building real world things and improving the way we build them. Early in my career, I watched capable teams build complex systems using archaic workflows that had not really evolved. AllSpice.io started as an effort to change that and bring modern software practices, and now AI, into hardware development. These days, I don’t build products hands-on anymore, but I get to see them come to live through the teams we support. Originally from Argentina, I moved to Boston for school and earned a B.S. in Mechanical Engineering from Boston University followed by an M.S. in Engineering with a focus on Computer Science and an MBA from Harvard. I now live in San Francisco with my husband, young son, and very sassy miniature schnauzer.

Headshot of a team member

Kyle Dumont

Co-Founder & CTO

I've always been obsessed with building, innovating, and finding novel solutions for emerging technologies. Since early in my career, I've loved the synthesis between physical hardware and digital integration electrical engineering offered, and spent many years taking hardware products from concept to mass-manufacturing. I started AllSpice.io to ensure hardware engineers have all of the data they need to make impactful decisions at their fingertips. I live in the Boston area, and hold a BS in Electrical Engineering from Northeastern University, a MS in Engineering with a focus on Computer Engineering and Machine Learning and an MBA from Harvard, and 5 patents in hardware system integration and sensor design.

Headshot of a team member

Valentina Ratner

Co-Founder & CEO

At heart, I’m an engineer. I love building real world things and improving the way we build them. Early in my career at Amazon, I watched capable teams build complex systems using archaic workflows that had not really evolved. AllSpice.io started as an effort to change that and bring modern software practices, and now AI, into hardware development. These days, I don’t build products hands-on anymore, but I get to see them come to live through the teams we support. Originally from Argentina, I moved to Boston for school and earned a B.S. in Mechanical Engineering from Boston University, an M.S. in Engineering (Computer Science), and an MBA from Harvard. I now live in San Francisco with my husband, young son, and very sassy miniature schnauzer.

Headshot of a team member

Kyle Dumont

Co-Founder & CTO

I've always been obsessed with building, innovating, and finding novel solutions for emerging technologies. Since early in my career, I've loved the synthesis between physical hardware and digital integration electrical engineering offered, and spent many years taking hardware products from concept to mass-manufacturing. I started AllSpice.io to ensure hardware engineers have all of the data they need to make impactful decisions at their fingertips. I live in the Boston area, and hold a BS in Electrical Engineering from Northeastern University, a MS in Engineering with a focus on Computer Engineering and Machine Learning and an MBA from Harvard, and 5 patents in hardware system integration and sensor design.

FAQs

Quick answers to common questions about this topic.

What challenges exist in multi-PCBA projects?

Coordination, compatibility, and version management.

How can teams manage complex assemblies?

By organizing designs into structured systems with version control.

Why is hierarchy important in hardware projects?

It defines relationships between subsystems.

What tools help manage large projects?

Version control systems and collaboration platforms.

Latest posts

Interviews, guides, and practical insights across AI for hardware, design reviews, DevOps, and modern engineering workflows.
post
5
min
Learn how AI-powered schematic design review catches hardware issues early. See real examples from our DRCY webinar and run it on your own design.
Read post
post
4
min
DRCY brings AI-assisted schematic reviews into AllSpice, analyzing native ECAD data securely, catching issues early, with no exports or tool switching
Read post
post
3
min
Learn how DRCY, AllSpice’s AI design review agent, helps hardware teams catch fundamental design issues early.
Read post
Book titled 'Git for Hardware guide' on a dark background with text 'Build your ideal hardware workflow automated' and a yellow button labeled 'Git it now'.