The default bug view has changed. See this FAQ.

Transplant tool (Hg to Hg) for sheriffs



Release Engineering
3 years ago
2 years ago


(Reporter: armenzg, Assigned: gmiroshnykov)


(Blocks: 1 bug)

Firefox Tracking Flags

(Not tracked)


Comment hidden (empty)


3 years ago
Blocks: 997674
These notes were taken and will need some editing to make sense:
The idea here is to create an internal service (available to a small set of people + some automated tools later) that takes as input something like:

- Source repo
- Source revision(s) (a range of revisions would be useful, I think)
- Destination repo

This transplant tool will then transplant the specified commits onto the destination repository at the tip of the default branch.

If the revisions can't be transplanted automatically (due to merge conflicts, for example), the service should return an error.
Blocks: 1014832
The transplant tool won't help with landing patches from bugzilla directly onto hg. It's meant to take revisions from one hg repo and transplant them onto another, e.g. for uplifts, or for taking successful try pushes and landing them on inbound.
OS: Windows 8.1 → All
Hardware: x86_64 → All
Let me know if you were looking for victims to eat this dogfood.  I'm very hungry.  :-)


3 years ago
Summary: Transplant tool (Hg to Hg) → Transplant tool (Hg to Hg) for sheriffs


3 years ago
Blocks: 1017736

Comment 5

3 years ago
The latest version of the tool is available here:

It is configured to allow transplants from mozilla-central-test to mozilla-aurora-test.
Those repositories are clones of corresponding production repositories for testing purposes.

Here's how you can try it out:

0. If you haven’t done this yet, please send me your SSH public key to gain access to test repositories.
1. Clone mozilla-central and mozilla-aurora (the real ones) locally.
2. Add the following path to mozilla-central/.hg/hgrc:
transplant = ssh://
3. Add the following path to mozilla-aurora/.hg/hgrc
transplant = ssh://
4. For both repositories, pull from default and push to transplant.
(the above steps won’t be necessary when transplant tool will be in production, it is only to keep test repositories in sync with the real ones)
5. Find the commit you want transplanted from m-c to m-a.
6. Go to
7. Select source and destination repositories (not many options there yet).
8. Put the commit ID you found on step 5 into the corresponding field.
9. Optionally, change the commit message.
10. Hit "Transplant" button and hope for the best :)

The source code is available here:


3 years ago
Blocks: 910028


3 years ago
Blocks: 1043010


3 years ago
Depends on: 1070119


3 years ago
Depends on: 1070121


3 years ago
Assignee: catlee → gmiroshnykov
Last Resolved: 2 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.