Phabricator/FAQ: Difference between revisions

→‎Arcanist, the 'arc' command-line tool: instructions for fetching changes
(→‎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? ===
Confirmed users
86

edits