Confirmed users
599
edits
m (add missing *) |
(drop references to mozilla-inbound repository) |
||
Line 18: | Line 18: | ||
The following will pull all (or at least most) of the branches sheriffs need to have on hand: | The following will pull all (or at least most) of the branches sheriffs need to have on hand: | ||
* | * hg pull autoland && hg pull beta && hg pull release && hg pull esr52 | ||
If you need other branches, you can find their names in the [https://hg.mozilla.org/hgcustom/version-control-tools/file/default/pylib/mozautomation/mozautomation/repository.py firefoxtree extension source]. | If you need other branches, you can find their names in the [https://hg.mozilla.org/hgcustom/version-control-tools/file/default/pylib/mozautomation/mozautomation/repository.py firefoxtree extension source]. | ||
Line 29: | Line 29: | ||
To pull in newly landed changes, you can use one of the following commands: | To pull in newly landed changes, you can use one of the following commands: | ||
* hg pull fxtrees # this will pull from all branches listed with the fxheads command | * hg pull fxtrees # this will pull from all branches listed with the fxheads command | ||
* hg pull | * hg pull treename # this will pull only from the tree with the name "treename" | ||
== Merges == | == Merges == | ||
This assumes you have your unified repo all set up so that `hg fxheads` lists each of central | This assumes you have your unified repo all set up so that `hg fxheads` lists each of central and autoland. | ||
To merge a specific non-tip <revision> from | To merge a specific non-tip <revision> from autoland to mozilla-central: | ||
# hg pull central | # hg pull central | ||
# hg up central | # hg up central | ||
# hg merge -r <revision> | # hg merge -r <revision> | ||
# hg commit -m "Merge | # hg commit -m "Merge autoland to mozilla-central a=merge" | ||
# hg push -r . central | # hg push -r . central | ||
To merge mozilla-central into | To merge mozilla-central into autoland: | ||
# hg pull central | # hg pull central | ||
# hg pull | # hg pull autoland | ||
# hg up | # hg up autoand | ||
# hg merge central | # hg merge central | ||
# hg commit -m "Merge mozilla-central to | # hg commit -m "Merge mozilla-central to autoland. CLOSED TREE" | ||
# hg push -r . | # hg push -r . autoland | ||
* If the `hg merge central` command results in "abort: nothing to merge", you should instead use `hg update -r <mozilla-central's tip revision>` to do a non-merging update, then you can do `hg push -r . | * If the `hg merge central` command results in "abort: nothing to merge", you should instead use `hg update -r <mozilla-central's tip revision>` to do a non-merging update, then you can do `hg push -r . autoland` to push it as usual. | ||
== Uplifts == | == Uplifts == | ||
If branch-specific patches are posted, follow | If branch-specific patches are posted, follow import the patches onto the relevant branch. | ||
If you're uplifting directly from an | If you're uplifting directly from an mozilla-central checkin to mozilla-beta: | ||
Pull and update to prepare for the uplifts: | Pull and update to prepare for the uplifts: | ||
Line 177: | Line 102: | ||
== Rebasing after losing a push race == | == Rebasing after losing a push race == | ||
This assumes you have commits you're attempting to push to | This assumes you have commits you're attempting to push to autoland when you lose a push race with someone. Change `autoland` to the correct branch name as needed. | ||
* hg pull | * hg pull autoland | ||
* hg rebase -d | * hg rebase -d autoland | ||
* hg push -r . | * hg push -r . autoland | ||
== Recovering from mistakes == | == Recovering from mistakes == | ||
Line 194: | Line 119: | ||
You may also need to use some combination of the following to get things back to a known-good state: | You may also need to use some combination of the following to get things back to a known-good state: | ||
* hg purge # http://mercurial.selenic.com/wiki/PurgeExtension | * hg purge # http://mercurial.selenic.com/wiki/PurgeExtension | ||
* hg up -C | * hg up -C . | ||
== See what you're about to push == | == See what you're about to push == | ||
`hg out` without any flags added will show you a LOT of unrelated commits. To see just what you'll be pushing to a given branch, use `hg out -r . <branch>` | `hg out` without any flags added will show you a LOT of unrelated commits. To see just what you'll be pushing to a given branch, use `hg out -r . <branch>` | ||
* hg out -r . | * hg out -r . autoland | ||
** This will only display the things you're about to push to the | ** This will only display the things you're about to push to the autoland branch | ||
== View incoming changes == | == View incoming changes == | ||
Line 232: | Line 157: | ||
hg mergetointegration autoland | hg mergetointegration autoland | ||
This cuts down on a lot of repetitive typing, saving a bit of time. | This cuts down on a lot of repetitive typing, saving a bit of time. | ||