Get Started

How to Migrate to a Monorepo Without Interrupting Anyone’s Work

How Should You Migrate to a Monorepo?

The simplest - but hardly the easiest - way is a cutover migration. Wrap up all the code review, take everyone away from their real work and get it done. You might lose days, you might lose weeks.

But what if you’re too busy?

A staged migration can be more elegant, but also more complicated. It requires meticulous planning, and unforeseen challenges can ruin your day.

Or What About a Simple Migration
That Fits Around You?

If you could run your existing infrastructure alongside your new monorepo for as long as you like?

If it was no work at all to keep them in sync?

How to Migrate to a Monorepo Without Interrupting Anyone’s Work

How Should You Migrate to a Monorepo?

The simplest - but hardly the easiest - way is a cutover migration. Wrap up all the code review, take everyone away from their real work and get it done. You might lose days, you might lose weeks.

But what if you’re too busy?

A staged migration can be more elegant, but also more complicated. It requires meticulous planning, and unforeseen challenges can ruin your day.

Or What About a Simple Migration
That Fits Around You?

If you could run your existing infrastructure alongside your new monorepo for as long as you like?

If it was no work at all to keep them in sync?

Migrate Using Git X-Modules

Our server-side software does all the work to keep your old and new repositories in sync.
You can switch to your monorepo smoothly at the pace you choose.
No other work needs to pause.

Let’s Walk Through the Whole Process

Here’s how it works.

1. You Start With Your
Existing Setup

Here’s where you are now: multiple repositories.

There’s a separate repository for each application, and likely others for shared code. Development, code review and task tracking ranges across many or all of them.

2. Build the Monorepo

Next, install X-Modules on your server. It’s available for self-hosted servers, Bitbucket Data Center and for cloud services like Github, Gitlab and Bitbucket Cloud.

Set up a new repository and add one X-Module to it for each of your repositories. X-Modules will synchronize your entire code base to this single repository.

Now you have your monorepo!

3. Switch to the Monorepo
(At Your Own Pace)

Now you can start moving things over: build pipelines, task trackers, everything.

You can move them over one by one, as fast or as slow as you like. All your old infrastructure still works.

An X-Modules Migration Can Happen At Any Stage of Code Review

And it doesn’t matter which repository you use to make or approve changes.

It’s fine to have developers spread across the old and new infrastructure. Do it for as long as it suits you.

4. Clean Up Old Pipelines
(When You’re Not Using Them)

Clean Up Old Pipelines (When You’re Not Using Them)

Once you’ve switched to the monorepo, you can remove the old stuff no longer in use.

Or Keep It And Enjoy the Best of Both Worlds

Even once you’ve got your monorepo, you might still want to keep your separate repositories.

They’re lightweight and fast. You don’t have to trust outside contractors with all your code. It’s easier to track the history of each project.

With Git X-Modules, it’s no hassle to maintain both systems side by side.

This is Just One Way to Use Git X-Modules

This is a versatile tool and we won’t railroad you on how to use it.

Reach for it any time you want to synchronize code across multiple repositories, without the headaches and difficulties of older technologies.

Try Git X-Modules today