Page MenuHomePhabricator

arc can't identify revisions it creates
Closed, DuplicatePublic

Description

If I arc patch a differential revision, arc land fails to land it:

chris@boltpro:~/git/puppet (master)$ arc patch D5846
Created and checked out branch arcpatch-D5846.
Checking patch modules/cruisecontrol/files/cruiseconduit/src/cruise/conduit/CruiseConduitClient.php...
Applied patch modules/cruisecontrol/files/cruiseconduit/src/cruise/conduit/CruiseConduitClient.php cleanly.
 OKAY  Successfully committed patch.
chris@boltpro:~/git/puppet (arcpatch-D5846)$ arc land
Landing current branch 'arcpatch-D5846'.
Switched to branch master. Updating branch...
The following commit(s) will be landed:

13ef8f4 Update the phpunit conduit client for the new report format refs T13573

Switched to branch arcpatch-D5846. Identifying and merging...
Usage Exception: arc can not identify which revision exists on branch 'arcpatch-D5846'. Update the revision with recent changes to synchronize the branch name and hashes, or use 'arc amend' to amend the commit message at HEAD, or use '--revision <id>' to select a revision explicitly.

I can run arc land --revision D5846 but it would be great if arc knew the revision automatically.

Event Timeline

chrisbolt raised the priority of this task from to Needs Triage.
chrisbolt updated the task description. (Show Details)
chrisbolt added a project: Arcanist.
chrisbolt added a subscriber: chrisbolt.

arc patch + arc land should generally work better than it does, or possibly be some kind of combined arc patch --land or arc land --patch workflow.

While cumbersome, arc patch --nobranch Dnnn + git push may be a reasonable workaround until this is smoothed out.