I’d like to share the first public release of mrm (multi-repo-manager), a CLI tool I built to manage many git repositories as a single workspace:
I thought it might be useful to share with the Moqui community because Moqui setups involve multiple repositories in a nested structure with the need to recreate the same structure across different machines.
For example, a Moqui workspace might look something like this:
cd projects
git clone https://github.com/moqui/moqui-framework
cd moqui-framework
git clone https://github.com/moqui/moqui-runtime runtime
cd runtime/component
git clone https://github.com/moqui/mantle-udm
...
Once that structure is in place, you can capture it in a YAML file with:
mrm find projects --save
Then later you can do things like:
mrm update
to update all tracked repositories, or on another machine copy the YAML file and run:
mrm sync
to recreate the same workspace structure.
What mrm does:
- define all repos once in a YAML file
- clone, sync, and update them together
- check status across all repos with one command
- run bulk commands across the whole workspace
- keep forks synced from upstream to origin
- handle nested repositories cleanly
- run ad hoc commands without YAML when needed
This is the first public release (0.1.0), and I wanted to share it as a small way of giving back to the open source community. I’ve benefited a lot from Moqui and from open source software in general, and this tool came out of trying to make that kind of day-to-day multi-repo work simpler and more repeatable.
If it looks useful for Moqui workflows, I’d really appreciate any feedback, ideas, or suggestions.