The regression introduced in #53453 where selecting a remote branch from the branch picker checked out the remote tracking ref directly, leaving the repository in detached HEAD state. Instead of creating a local branch that set the remote branch as it's upstream. The fix was reverting the old checks we did before #53452 was merged to figure out if the branch was valid, remote only, local, or local without the upstream set. Depending on the type of reference it is Zed will check it out, or create/set the branch with remote tracking to its upstream branch. I also added a regression test to prevent this from happening again in the future Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [x] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Release Notes: - N/A
1 file changedLine totals unavailable