release/0.19.10

cjpais/Handyrelease/0.19.10May 8, 2026by krlvi

AI Summary

A security-focused release introducing multi-commit selection support, new TUI features, and removing deprecated CLI commands in favor of unified alternatives.

Key Highlights

  • Support for multi-commit selection and operations (move, squash)
  • Added SHA-256 repository support
  • New TUI help modal and 'undo' action
  • Removed implicit 'rub' action and deprecated 'but branch move'
  • Improved color consistency in CLI commands

Breaking Changes

  • Removed implicit 'rub' action (e.g., running `but <id> <id>`)
  • Removed `but branch move` in favor of `but move`
  • Replaced `but push --run-hooks` with `--no-hooks`
  • Removed `but absorb --new` flag

New Features

  • Multi-commit operations support
  • Experimental light theme for TUI
  • Improved 'but move' to support multiple commits

Full Release Notes

## Security

This and the last few releases include important security fixes. Please update to 0.19.9 or newer.

## Changes

- Applying of branches no longer performs an unnecessary rebase
- Adds support for multi-commit selection and operations (e.g. move, squash etc)
- Adds support for SHA-256 repositories
- Amending of commits now shows a modal if there were rejected changes (e.g. due to conflicts)
- Removes the "split branch" options from the UI (it will be back, better)

## Fixes

- Fixes an issue where typing a commit message could cause the cursor to jump to the start of the line
- Fixes an issue with parsing of certain git config files
- Fixes a bug where unapplying a branch could cause uncommitted changes to appear as untracked changes
- Fixes a bug where in some cases amending a commit could cause uncommitted deletions to disappear
- Fixes an issue with updating the workspace resulting in an error "The new head names do not match the current heads"
- Fixes an issue where the app would fail if the remote has a branch named "head"
- Fixes a bug where after deleting a project an error "Asynchronous operation failed" would appear

## TUI

- Adds a help modal with an overview of key binds (press `?` in the TUI)
- Added experimental light theme (set `EXPERIMENTAL_BUT_LIGHT_THEME=1`)
- Adds support for operating on multiple commits at once (e.g. move, squash etc)
- Adds an "undo" action for undoing the last operation (press `u`)
- When squashing multiple commits you can now choose how to combine the commit messages
- Improved "back" behavior when pressing `Esc`
- Fixes a bug where the file list was auto-closing after performing a rub action

## CLI

- Improved color consistency (e.g. but diff  / show / commit etc)
- `but move` now supports moving multiple commits at once
- `but apply` now resolves short branch names
- `but absorb` now removes `--new` (it will be back, better)
- `but mcp` no longer has the `--internal` flag
- `but push` `--run-hooks` is now replaced with `--no-hooks` for disabling
- `but undo` now correctly restores to the latest snapshot
- `but branch move` has been removed in favor of `but move`
- removed the implicit "rub" action (e.g. running `but <id> <id>` as an equivalent to `but rub <id> <id>`)
- fixes an issue where `but discard` could fail on multi-hunk changes
- fixes an issue where `but discard` could fail to discard renaming of files
- fixes an issue where `but rub` to amend a file could fail to restore a previously deleted file

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

**Full Changelog**: https://github.com/gitbutlerapp/gitbutler/compare/release/0.19.9...release/0.19.10

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