Confirmed users
86
edits
(→Phabricator: filtering emails in gmail.) |
(→Arcanist, the 'arc' command-line tool: instructions for fetching changes) |
||
| Line 88: | Line 88: | ||
Use the “--allow-untracked” option to arc diff. | Use the “--allow-untracked” option to arc diff. | ||
=== How do I fetch and apply changes to a local repository? === | |||
Provided all dependent revisions have been submitted to Phabricator and not | |||
replaced with updated diffs, the "Related Revisions" have been set up | |||
correctly, and the first revision in the related revision chain has a parent | |||
commit hash corresponding to a base revision existing in the local mercurial | |||
repository, "arc patch --revision D<NNNNN>" should apply the series to the | |||
appropriate base revision. | |||
The process is more complicated for retrieving any diffs from revisions that | |||
now have more recent diffs in the related revision chain: | |||
# The "History" tab for a revision has a list of diff IDs. Identify the diff ID for the diff that is wanted. The creation date may be useful. | |||
# Look through the history of the revision to find changes to the parent revision and guess which was the parent revision at the time the diff was generated from a commit. Changes to parent revisions are manual and so may happen before or after the commit was pushed (if they were accurate at any stage). | |||
# Repeat the process to find a diff ID in the parent revision, and continue until there are no parent revisions. When viewing a particular diff ID, the "Commits" tab will have a commit hash and parent commit hash, if the diff was submitted from moz-phab at least. These may be useful in identifying parent revisions and diffs. | |||
# "arc patch --diff <NNNNN>" may be used to create a commit for the first diff in the series. | |||
# For each subsequent diff use "arc patch --skip-dependencies --diff <NNNNN>". "--skip-dependencies" prevents more recent diffs for parent revisions or diffs for wrong parent revisions being fetched and prevents attempts to apply the specified diff on these incorrect diffs ([https://bugzilla.mozilla.org/show_bug.cgi?id=1485849 Tracked in bug 1485849]) | |||
=== How do I get "arc patch" to apply changes to local tip instead of branching an earlier commit? === | === How do I get "arc patch" to apply changes to local tip instead of branching an earlier commit? === | ||
Use "arc patch --nobranch [rest of command]". | Use "arc patch --nobranch [rest of command]". The changes will be applied to the appropriate earlier commit, if known, and rebased. | ||
=== The official docs on installing Arcanist on Windows are ... not great. Are there better ones somewhere? === | === The official docs on installing Arcanist on Windows are ... not great. Are there better ones somewhere? === | ||