Skip to content

git: Fix a regression introduced with removing gitlib2 dep#58359

Merged
Anthony-Eid merged 3 commits into
mainfrom
fix-git-branch-picker-regression
Jun 2, 2026
Merged

git: Fix a regression introduced with removing gitlib2 dep#58359
Anthony-Eid merged 3 commits into
mainfrom
fix-git-branch-picker-regression

Conversation

@Anthony-Eid

@Anthony-Eid Anthony-Eid commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

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:

  • I've reviewed my own diff for quality, security, and reliability
  • Unsafe blocks (if any) have justifying comments
  • The content is consistent with the UI/UX checklist
  • Tests cover the new/changed behavior
  • Performance impact has been considered and is acceptable

Release Notes:

  • N/A

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.

I also added a regression test to prevent this from happening again in
the future
@cla-bot cla-bot Bot added the cla-signed The user has signed the Contributor License Agreement label Jun 2, 2026
@zed-community-bot zed-community-bot Bot added the staff Pull requests authored by a current member of Zed staff label Jun 2, 2026
@maxdeviant maxdeviant changed the title git: Fix a regression introduce when removing gitlib2 dep git: Fix a regression introduced with removing gitlib2 dep Jun 2, 2026
@Anthony-Eid Anthony-Eid added this pull request to the merge queue Jun 2, 2026
Merged via the queue into main with commit c56914d Jun 2, 2026
33 checks passed
@Anthony-Eid Anthony-Eid deleted the fix-git-branch-picker-regression branch June 2, 2026 23:32
dandv pushed a commit to dandv/zed that referenced this pull request Jun 3, 2026
…tries#58359)

The regression introduced in zed-industries#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 zed-industries#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
TomPlanche pushed a commit to TomPlanche/zed that referenced this pull request Jun 8, 2026
…tries#58359)

The regression introduced in zed-industries#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 zed-industries#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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed The user has signed the Contributor License Agreement staff Pull requests authored by a current member of Zed staff

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants