release/0.22.2

oxc-project/oxcrelease/0.22.2Aug 28, 2026by krlvi

Upgrading?

AI Summary

A major update focusing on TUI and CLI improvements, along with extensive stability fixes for workspace syncing, handling of large PR lists, and non-UTF-8 file conflicts.

Key Highlights

  • TUI enhancements: Branch mode (`b`), ability to create/switch branches, branch search, and moving commits to new branches.
  • CLI reorganization: Renamed `but diff --tui` to `but tui --diff` and removed `--no-tui` and `but config ui` commands.
  • Improved workspace sync stability: Handles 100+ open PRs, non-UTF-8 conflicts, and slow fetch/push/clone operations without cancellation.
  • Fixed loading of merge requests with no head commit and resolving issues with overlapping staged/unstaged changes.

Breaking Changes

  • Renamed `but diff --tui` to `but tui --diff`.
  • Removed `but diff --no-tui` command.
  • Removed `but config ui` command.

New Features

  • Branch mode in TUI allowing branches to be discarded.
  • Branch search functionality in TUI.
  • New branch creation and switching with positioning capabilities.

Full Release Notes

## Changes
- Updating the workspace now fast-forwards a local target branch like `main` after its remote branch advances

## Fixes
- GitHub repositories with 100 or more open pull requests now refresh correctly as pull request activity changes
- GitLab: An open merge request with no head commit no longer breaks merge request loading
- Edit mode no longer crashes on conflicts in non-UTF-8 files or treats those conflicts as resolved
- Workspace syncs no longer fail when a remote the workspace does not use cannot be fetched
- Uncommitted changes now load correctly when staged and unstaged changes overlap
- Slow fetch, push, and clone operations are no longer cancelled after two minutes
- Pull request and merge request information stays visible when GitHub, GitLab, or Bitbucket credentials are missing or a refresh fails due to a network error
- Onboarding no longer gets stuck when no Git identity is configured
- Restoring operation history now keeps the full stack when duplicate branch names exist across stacks
- Unapplying a stack no longer fails when its branch names also exist in another stack
- Updating a branch from upstream no longer fails with "BUG: Add edge introduces a cycle" after a local upstream merge
- Pull requests are no longer shown as "not mergeable" while merge status is still loading or temporarily unavailable

## CLI
- `but diff --tui` is now `but tui --diff`
- `but diff --no-tui` and `but config ui` have been removed

## TUI
- Press `b` in the TUI to enter branch mode, where branches can now be discarded
- You can now create a new branch and switch to it, including positioning it above or below another branch
- Adds branch search, so you can find an existing branch and switch to it
- Commits can now be moved to a new branch

## New Contributors
* @macgyver13 made their first contribution in https://github.com/gitbutlerapp/gitbutler/pull/15611

**Full Changelog**: https://github.com/gitbutlerapp/gitbutler/compare/release/0.22.1...release/0.22.2

## Downloads
Download bins from https://gitbutler.com/

Related Repositories