- In Mercurial, it's possible to have multiple branch heads with the same name.
- In Git, it's possible to have multiple symbols (e.g., a tag and also a branch) with the same name.
- The UX these cases is bad.
- We don't degrade gracefully (we should select the best alternative and continue).
- We conflate "missing" and "ambiguous" references, but these are significantly different.
- We don't present the error in a helpful way.
---
I am getting the 'Ref "default" is ambiguous or does not exist' error in one of my Mercurial repository after updating PH to latest. I went thru the commits and manually undo commit [[ https://github.com/phacility/phabricator/commit/d98eb2c8b809f91d60191ed99445b06f156ed5ee#diff-b930119afb1664f2df587acb88e95873 | d98eb2c ]] to get PH back up and running.
I think the issue is because there are multiple "default" branches in my repository. I am not sure how that is even possible as it was before my time. I "think" we were using subrepository at that time so maybe that's why there were multiple default branches inside a repo. {F280275}{F280277}