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
F14147874: D20786.diff
Wed, Dec 4, 8:25 AM
F14144318: D20786.id.diff
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
Unknown Object (File)
Tue, Nov 5, 5:28 AM
Unknown Object (File)
Oct 24 2024, 9:02 AM
Unknown Object (File)
Oct 11 2024, 11:28 PM
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