release/0.22.2

flowglad/flowgladrelease/0.22.2Aug 28, 2026by krlvi

AI Summary

A significant update introducing major TUI improvements and CLI command restructuring, alongside numerous workflow fixes for syncs, conflicts, and onboarding.

Key Highlights

  • TUI now supports branch mode with search, creation, and discarding capabilities.
  • CLI command `but diff --tui` has been renamed to `but tui --diff`.
  • Workspace updates now fast-forward local branches like `main` when the remote branch advances.
  • Slow fetch, push, and clone operations are no longer cancelled after two minutes.

Breaking Changes

  • CLI: `but diff --tui` is now `but tui --diff`.
  • CLI: `but diff --no-tui` has been removed.
  • CLI: `but config ui` has been removed.

New Features

  • Branch mode in TUI (press `b`, search, discard branches).
  • Ability to create new branches and switch to them, positioning above or below other branches.
  • Ability to move commits to a new branch.
  • Commits can now be moved to a new branch.

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/