383
edits
(Changed the mozilla-unified reference to the github repo) |
(Updated the moz-phab uplifts steps to mention git and conflicts) |
||
| Line 35: | Line 35: | ||
# '''Ensure you are using the [https://github.com/mozilla-firefox/firefox mozilla-firefox] repository''' | # '''Ensure you are using the [https://github.com/mozilla-firefox/firefox mozilla-firefox] repository''' | ||
# '''Switch to the appropriate branch''' (e.g. beta, ESR140, etc.) | # '''Switch to the appropriate branch''' (e.g. beta, ESR140, etc.) Make sure your local repository is up to date with the target branch head. | ||
# '''Find the patch or series of patches in your local VCS.''' You can ''moz-phab patch'' onto your local machine if need be. | # '''Find the patch or series of patches in your local VCS.''' You can ''moz-phab patch'' onto your local machine if need be. | ||
# '''Determine which uplift train you want to request an uplift for.''' You can see which trains are available with ''moz-phab uplift --list-trains''. | # '''Determine which uplift train you want to request an uplift for.''' You can see which trains are available with ''moz-phab uplift --list-trains''. | ||
# '''Run ''moz-phab uplift --train <train> <first revision of patches to uplift> <last revision of patches to uplift>''.''' Most of the arguments to ''moz-phab uplift'' are the same as ''moz-phab submit''. This will create new revisions in Phabricator that will be uplifted to the specified train. If ''moz-phab uplift'' is run from mozilla-unified, the stack of patches will be rebased onto the target that will be landed to. For example if you specify ''--train beta'', the patches will be rebased onto the ''beta'' head in your local VCS. If ''moz-phab uplift'' is run from central or another non-unified repo, the commits will be submitted without attempting to rebase them. Note you must use ''moz-phab uplift'', not ''moz-phab sumbit'' or any other unsupported tool to submit uplift requests. | # '''Run ''moz-phab uplift --train <train> <first revision of patches to uplift> <last revision of patches to uplift>''. ''' For Git users: The moz-phab uplift command requires the commit hash of the revision immediately before the first one in the patch stack, and the commit hash of the last revision to uplift.Most of the arguments to ''moz-phab uplift'' are the same as ''moz-phab submit''. This will create new revisions in Phabricator that will be uplifted to the specified train. If ''moz-phab uplift'' is run from mozilla-unified, the stack of patches will be rebased onto the target that will be landed to. For example if you specify ''--train beta'', the patches will be rebased onto the ''beta'' head in your local VCS. If ''moz-phab uplift'' is run from central or another non-unified repo, the commits will be submitted without attempting to rebase them. Note you must use ''moz-phab uplift'', not ''moz-phab sumbit'' or any other unsupported tool to submit uplift requests. | ||
# '''Open the URL as suggested at the bottom of the output.''' | # '''Open the URL as suggested at the bottom of the output.''' | ||
# '''Complete the uplift request form. See the section below on how to submit the form.''' | # '''Complete the uplift request form. See the section below on how to submit the form.''' | ||
=== Manual Cherry-Pick (Recommended if Conflicts Are Likely) === | |||
If you expect merge conflicts or want finer control over the uplift, you may prefer manually cherry-picking commits and uploading with <code>moz-phab submit</code>. This avoids the behavior of <code>moz-phab uplift</code>, which will '''fail without recovery options if any conflicts are encountered.''' | |||
# '''Switch to the target uplift branch''' (e.g. beta, ESR140, etc.) Make sure your local repository is up to date with the target branch head. | |||
# '''Cherry-pick each commit''' git cherry-pick <commit-hash> | |||
# '''Resolve any merge conflicts as needed.''' | |||
# '''Push the result to a new branch.''' | |||
# '''Submit the changes to Phabricator''' moz-phab submit | |||
# '''Complete the uplift request form. See the section below on how to submit the form.''' | |||
== Submit the Uplift Request Form == | == Submit the Uplift Request Form == | ||
edits