A Git helper tool that breaks large merges into parallelizable tasks

Mergetopus is a Git helper tool designed to simplify large, risky merges by splitting them into parallelizable tasks, allowing multiple developers to resolve conflicts simultaneously.
mergetopus is a tool that helps teams follow a structured workflow for very large merges by splitting one risky merge into parallelizable tasks:
- one integration branch for trivial/non-conflicting merge results
- optional slice branches for selected conflicted files
The core idea is collaborative merge execution:
- one person initializes the merge plan (
mergetopus) - multiple developers resolve different slice branches in parallel (
mergetopus resolve) - a coordinator monitors progress and next actions (
mergetopus status) - once promoted, temporary branches are cleaned up (
mergetopus cleanup)
When you run mergetopus <source>, it:
- Checks that you're in a Git repo with a clean working tree.
- Creates an integration branch (
_mmm/<target>/<source>/integration). - Runs
git merge --no-commitagainst the source. - Commits everything that merged cleanly into the integration branch.
- Resets conflicted files back to
oursin that same commit — they'll be dealt with in slices. - Lets you group conflicts into slices (via TUI or
--select-paths). - Creates a branch per slice from the merge base.
From there, use mergetopus resolve to work through each slice with your merge tool.
Workflow Example:
- Plan and split the merge:
mergetopus feature/very-large-change
- Resolve slices in parallel:
mergetopus resolve _mmm/main/feature_very-large-change/slice1
- Track progress:
mergetopus status feature/very-large-change
- Promote and clean up:
After all slices are merged, create a
kokomecosnapshot branch (a consolidated merge commit) and runmergetopus cleanup.
The kokomeco merge topology preserves correct line-blame because each snapshot has the source branch as a merge parent, ensuring unchanged lines from the source side trace back to their original authors.
Source: Hacker News















