Page MenuHomePhabricator

When running "arc land" from a detached HEAD, don't try to delete the source ref
ClosedPublic

Authored by epriestley on Sep 5 2019, 12:25 PM.
Tags
None
Referenced Files
F14237621: D20786.id49562.diff
Thu, Dec 12, 1:19 PM
Unknown Object (File)
Fri, Dec 6, 9:28 AM
Unknown Object (File)
Thu, Dec 5, 2:11 AM
Unknown Object (File)
Wed, Dec 4, 8:25 AM
Unknown Object (File)
Tue, Dec 3, 7:51 PM
Unknown Object (File)
Fri, Nov 22, 10:11 AM
Unknown Object (File)
Fri, Nov 22, 10:11 AM
Unknown Object (File)
Fri, Nov 22, 9:41 AM
Subscribers
None
Tokens
"Party Time" token, awarded by leoluk.

Details

Summary

Fixes T10321. Some reasonable but less-common workflows involve running arc land from a detached HEAD state.

When users do this, we currently try to delete the raw hash as though it were a branch during cleanup. Instead, detect if the thing we're thinking about deleting is a branch or not, and just leave it alone if it isn't.

Test Plan
  • Ran git checkout <some hash>, then arc land --revision <some revision>.
  • Before, everything worked but cleanup tried to git branch -D <some hash>.
  • After, everything worked and cleanup skipped branch deletion.

Diff Detail

Repository
rARC Arcanist
Branch
dhead1
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 23388
Build 32129: Run Core Tests
Build 32128: arc lint + arc unit