Aquí hi ha 147 versions de GitButler, des de 11 d’abril del 2024 fins a l’actual, 0.22.3. Cadascuna enllaça amb els instal·ladors del mateix desenvolupador.
147 versions en 2 anys · unes 62 per any
| Versió | Data | Mida | Fitxers |
|---|---|---|---|
| 0.22.3Darrera versió | 29 d’agost del 2026 | 36,3 MB | 64 bits MSI 36,3 MB Notes de la versióReleaseNotes: |-
**0.22.3**
- Fixes an incorrect GitHub or GitLab authentication error when syncing a project without a connected forge integration
- Fixes GitHub pull request publishing failures showing "422 Unprocessable Entity" instead of GitHub's explanation of what needs fixing
- Fixes a 0.22.2 regression were in some cases the app uses a fallback committer value instead of the configured Git identity
**0.22.2**
## 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
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.22.0 | 6 de juliol del 2026 | 35,3 MB | 64 bits MSI 35,3 MB Notes de la versióReleaseNotes: |-
## Changes
Native GitHub Stacked PR Support is available in gitbutler 🥞🎉
- GitButler now automatically uses GitHub's native stacked pull requests for enrolled repositories, falling back to description footers otherwise
- You can now choose per project whether GitButler adds stack metadata to pull and merge request descriptions
- Cherry-picking now creates conflicted commits when a pick conflicts instead of blocking it
## CLI
Breaking changes: This release overhauls the `commit`, `amend`, `squash`, `discard` and `move`. The commands `rub`, `stage` and `unstage` have been removed. For agentic use its important to update the skill (`but skill check --update`)
- The CLI no longer reads change assignments from the desktop app. All worktree changes are treated as uncommitted; `but stage`, `but unstage`, and `but commit --only` have been removed
- `but commit` now takes sources positionally and uses `-b/--branch` for the target branch and `--above` or `--below` for stacking
- `but squash` still takes sources positionally but now uses `-t/--target` for the target. It can squash all types of sources into commits, branches, and the uncommitted area.
- `but amend` and `but uncommit` work similarly to `but squash`
- `but move` still takes sources positionally but now uses `-t/--target`, `--above`, or `--below` for the target. It can move commits, committed files, and branches. Use `--unstack` to unstack a branch
- `but rub` has been replaced by `but squash`
- `but amend` and `but squash` now default to uncommitted changes when you omit the source argument
- Mutation commands now print concise results with change IDs by default
- `--json` is now the standard machine-readable output flag, replacing `--format json`
- History-editing commands now refuse to modify commits already merged upstream, with `--allow-merged` available for deliberate overrides
- Errors now include recovery guidance for history edits, pull conflicts, cherry-picks, and pull or merge request actions, including newly conflicted commits and operations rejected by commit dependencies
## TUI
- The TUI now has a dedicated squash mode that lets you select the source or target first and squash across multiple branches, replacing rub mode
- The TUI can now open files and hunks in configured external programs, with multi-file selection, user-defined macOS apps, and per-extension defaults
- The TUI can now discard multiple branches at once
- The TUI now supports `--remember-selection`, restoring the previous selection when reopened
- TUI diffs now use Catppuccin syntax highlighting
- Fixes tab indentation in TUI diffs
## Fixes
- Fixes web links for self-hosted forges that use a custom port
- Fixes an issue where failed cherry-picks could fail silently
- Fixes merge handling so adjacent edits to the same file are detected as conflicts, matching Git's behavior
- Bitbucket: Fixes an issue where pull requests created through GitButler omitted default reviewers
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.21.0 | 6 de juliol del 2026 | 34,0 MB | 64 bits MSI 34,0 MB Notes de la versióReleaseNotes: |-
## Support for "push to main" / "skip the pull request" workflows
You can now land a branch straight onto its target eg. `origin/main`, without ever opening a pull/merge request.
In the desktop app this is enabled in the project settings (Git stuff) or during project setup. In the CLI this is done with `but land <branch>`.
## Changes
- Added a feature for resolving conflicted commits with AI (right click option) if AI is enabled for the project
- You can now apply to the workspace GitLab merge requests, including merge requests from forks
## Fixes
- Fixes an issue where undoing a change could leave spurious uncommitted changes behind
- Fixes an issue where stacking one branch onto another could fail with an "Invalid parent delimitation"
- Fixes an issue where the upstream integration modal could break while branch data was being refreshed
- You can now scroll the list of steps in the upstream integration modal
- Fixes a GitHub-specific issue where pull requests from forks could use the wrong SSH URL
- Fixes an issue where a checkout could remove a directory when a file was expected in its place
## CLI
- `but land <branch>` lands an applied branch directly onto its target, skipping the pull request
- `but merge` has been removed — `but land <branch> --yes` now covers it
- `but commit` and `but amend` now report which branch and commit each rejected change depends on
- `but resolve <commit>` now has an `--ai` flag for auto-resolving conflicted commits
## TUI
- Significantly improved performance with navigating large diffs
- The detail view now shows diff stats
- Arrow keys now work the same as `hjkl`
- Commit details now show the change ID
- Adds a jump mode for quickly moving around the interface
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.20.4 | 26 de juny del 2026 | 33,6 MB | 64 bits MSI 33,6 MB Notes de la versióReleaseNotes: |-
## Agentic Use
There is now a new command `but agent setup` which makes the overall setup easier. It is an interactive wizard for tuning version control behavior (similar to https://docs.gitbutler.com/ai-agents/tuning-agent-behavior but easier to setup). Running this is a good idea for best performance.
- Multi-committing, amending and splitting of commits now complete quicker and use less tokens
- Improved PR stacking workflows
## Changes
- There is now a "Font size" setting for the diff views (Settings → Appearance)
## CLI
- `but amend` now accepts `--changes` to amend specific changes into a commit
- You can now provide a message when creating an empty commit with `but commit`
- `but uncommit` now supports a diff output option to print the resulting changes
- `but status` now shows stacked branches that have been merged upstream
- Hunk IDs are now stable across commits and discards
- `but completions` now appears in the help output, making it discoverable when you grab the `but` binary without an installer
- `but` output now labels "unassigned changes" as "uncommitted"
- Fixes a bug where `but apply` could report success while leaving a branch unapplied when workspace metadata was stale
- Removed the `but mark` and `but unmark` commands
- Improved error messages when `stdin` isn't a terminal
## TUI
- You can now reorder stacks in the TUI
- You can now apply branches from the TUI
- You can now move multiple commits at once in the TUI
- You can now commit above or below the selected commit in the TUI
- You can now copy more things in the TUI — commit details, diff hunks, branch names and more — with `shift+y`
- Improved scroll keybindings: `j`/`k`/arrows move by line, `ctrl+d`/`ctrl+u` jump by 10 lines, and `shift+j`/`shift+k` jump by section
- Unapplying a branch and undoing no longer prompt for confirmation in the TUI, since both can be undone
## Fixes
- Fixes a bug where moving empty branches did not work correctly
- Fixes a bug where commit-message and branch-name generation failed for non-OpenAI providers (Anthropic, Ollama, and others)
- Fixes an issue where commit signing failed when `gpg.ssh.program` pointed at a path containing a tilde (`~`)
- Fixes an issue where being offline produced repeated error toasts from background pull-request polling
- Fixes an issue where updating the workspace was not handling squash-merge integrated branches properly
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.20.3 | 19 de juny del 2026 | 33,4 MB | 64 bits MSI 33,4 MB Notes de la versióReleaseNotes: |-
- Fixes a bug causing an "there is no default target commit" error
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.20.2 | 19 de juny del 2026 | 33,4 MB | 64 bits MSI 33,4 MB Notes de la versióReleaseNotes: |-
## 0.20.2
- Fixes a regression from 0.20.1 where in some cases fetching from the remote could error out
## 0.20.1
## Changes
- Changes made from outside the app, such as from the `but` CLI, now appear in the desktop app automatically without a manual refresh
- Adds an "Uncommit changes" option to the committed hunk context menu
- Adds Antigravity as a selectable editor for "Open in Editor"
- Redesigned how upstream changes are integrated into a branch: a new update button in the branch list opens a redesigned modal that shows how your branch has diverged from its remote, lets you choose an integration strategy, and previews the result before you apply it
## Fixes
- Fixes a bug where GitHub OAuth failures showed a "missing field" error instead of the actual error response from GitHub
- Fixes an issue where a new branch created on top of pushed commits was incorrectly styled as already pushed; branch styling now follows the branch's own push status
- Fixes the stacked-PR footer "part X of N" count so it matches each PR's position badge
- Fixes an issue where edit-mode refs (`gitbutler/edit`) were left behind after leaving edit mode
- Fixes an issue where "Open in Editor" failed to open the project in Zed
## CLI
- `--json` has been replaced by `--format json`
- Adds `but branch update` to integrate a branch's upstream changes, with selectable strategies (built-in templates or custom steps)
- Fixes some Codex specific issues causing the tool to underperform compared to Claude Code
- `but` now warns when an agent's skill files are stale and refreshes them automatically
- Fixes a bug where `but apply` reported success and exited 0 even when the branch was left unapplied due to conflicts; it now fails with a clear error
- Fixes a bug where `but rub zz commit` did not amend all changes
- Fixes a bug where `but branch show` could not find branches that were not at the head of a stack
- Fixes a bug where the cache directory was never created, so `but` never stored its update-check result
- Improved the error message when creating a branch whose path prefix collides with an existing branch
## TUI
- You can now mark multiple uncommitted files in the TUI and commit or discard them together
- You can now move multiple uncommitted files at once in the TUI
- Improved the labels shown when moving branches in the TUI
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.20.1 | 18 de juny del 2026 | 33,4 MB | 64 bits MSI 33,4 MB Notes de la versióReleaseNotes: |-
## Changes
- Changes made from outside the app, such as from the `but` CLI, now appear in the desktop app automatically without a manual refresh
- Adds an "Uncommit changes" option to the committed hunk context menu
- Adds Antigravity as a selectable editor for "Open in Editor"
- Redesigned how upstream changes are integrated into a branch: a new update button in the branch list opens a redesigned modal that shows how your branch has diverged from its remote, lets you choose an integration strategy, and previews the result before you apply it
## Fixes
- Fixes a bug where GitHub OAuth failures showed a "missing field" error instead of the actual error response from GitHub
- Fixes an issue where a new branch created on top of pushed commits was incorrectly styled as already pushed; branch styling now follows the branch's own push status
- Fixes the stacked-PR footer "part X of N" count so it matches each PR's position badge
- Fixes an issue where edit-mode refs (`gitbutler/edit`) were left behind after leaving edit mode
- Fixes an issue where "Open in Editor" failed to open the project in Zed
## CLI
- `--json` has been replaced by `--format json`
- Adds `but branch update` to integrate a branch's upstream changes, with selectable strategies (built-in templates or custom steps)
- Fixes some Codex specific issues causing the tool to underperform compared to Claude Code
- `but` now warns when an agent's skill files are stale and refreshes them automatically
- Fixes a bug where `but apply` reported success and exited 0 even when the branch was left unapplied due to conflicts; it now fails with a clear error
- Fixes a bug where `but rub zz commit` did not amend all changes
- Fixes a bug where `but branch show` could not find branches that were not at the head of a stack
- Fixes a bug where the cache directory was never created, so `but` never stored its update-check result
- Improved the error message when creating a branch whose path prefix collides with an existing branch
## TUI
- You can now mark multiple uncommitted files in the TUI and commit or discard them together
- You can now move multiple uncommitted files at once in the TUI
- Improved the labels shown when moving branches in the TUI
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.20.0 | 3 de juny del 2026 | 33,3 MB | 64 bits MSI 33,3 MB Notes de la versióReleaseNotes: |-
## GitButler for AI agents
GitButler can now be used directly by your coding agent via the `but` CLI and the agent skill.
Multiple agent session can use the `but` CLI to work in parallel or stacked, branch & commit, clean up history etc.
Check the [AI Agents](https://docs.gitbutler.com/ai-agents/overview) docs for how to set it up and tune the behavior to your liking.
## Changes
- Removed in-app GUI for Claude Code (superseded by the `but` skill & workflow for agentic use)
- Fixes a bug with in-app deep links
- Fixes a Gerrit specific bug with push destination output
- Improved the performance and reliability of commit squashing
- Fixes a bug where branch creation fails with "Branch cannot be created: target commit already belongs to another branch"
- It is now possible to discard commits that are in a conflicted state
## CLI
- The 'theme' of the CLI can now be set via the `BUT_THEME` environment variable (dark/light)
- Improved error handling and display on bad user input
- Significant performance improvements for `but branch [list]`
- Fixes a bug where global flags did not work with aliases
- `but branch new` now validates the provided name and fails instead of normalizing it
- `but reword <branch>` now validates the provided name and fails instead of normalizing it
- `but gui <path>` replaces `but .` for opening a directory in the GUI
- `but gui -n <path>` allows opening the GUI in a new window
- `but unapply` no longer prompts for confirmation
- `but oplog restore` no longer prompts for confirmation
- `but branch delete` no longer prompts for confirmation
## TUI
- It is now easier to create a new branch from unassigned files
- Adds the ability to discard multiple commits at once
- You can now delete non-empty branches
- You can now copy the content of diffs with Shift+C
- Fixes a bug where moved files could not be committed
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.19.13 | 19 de maig del 2026 | 34,8 MB | 64 bits MSI 34,8 MB Notes de la versióReleaseNotes: |-
## Changes & Fixes
- Fixes a Windows-specific regression from 0.19.12 where the app was not being correctly signed, causing friction with Windows Defender
- Fixes an issue where undoing a new branch creation with the operations log was not working.
- Adds an option to set ptyxis as the default terminal
## TUI
- Adds the ability to directly commit into a new branch (bound to `b`)
## CLI
- Fixes an issue where `but commit empty --json` would not print anything.
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.19.12 | 15 de maig del 2026 | 35,1 MB | 64 bits MSI 35,1 MB Notes de la versióReleaseNotes: |-
** 0.19.12 **
- Fixes a bug where the app can unexpectedly navigate to the "Configure your workspace" view
** 0.19.11 **
## Fixes
- Fixes a regression from 0.19.10 where updating the workspace would fail with "Branches are all up to date" error
- Fixes an issue where the AI commit message generation was disabled desptie being enabled in the settings
- Fixes an issue with stacked PRs where after pushing structural changes the PR base remained stale
- Fixes an issue where failing to unapply a branch would leave the UI in a stuck state
- Fixes a Windows-specific issue with "Open in Editor" when running the app from WSL
- The app now correctly handles shallow clones
- Fixes the "but-graph inconsistent with the commit graph" issue when performing actions in the app
- Fixes an issue where creating a branch with a "#" symbol would have the hashtag filtered out
## CLI
- Repeated "undo" operations now work as expected (undoing further back in history)
- `but reword --json` now correctly produces the relevant JSON output
- `but redo` - new command for re-apply undone operations
- `but oplog list` now displays more useful descriptions of past operations
- `but teardown` now supports `--checkout-to` override to specify the branch to checkout
## TUI
- The TUI now updates on filesystem changes
- Repeated "undo" operations now work as expected (undoing further back in history)
- Added "redo" operation to re-apply undone operations
- Fixes a navigation bug while in move mode
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.19.11 | 15 de maig del 2026 | 35,1 MB | 64 bits MSI 35,1 MB Notes de la versióReleaseNotes: |-
## Fixes
- Fixes a regression from 0.19.10 where updating the workspace would fail with "Branches are all up to date" error
- Fixes an issue where the AI commit message generation was disabled desptie being enabled in the settings
- Fixes an issue with stacked PRs where after pushing structural changes the PR base remained stale
- Fixes an issue where failing to unapply a branch would leave the UI in a stuck state
- Fixes a Windows-specific issue with "Open in Editor" when running the app from WSL
- The app now correctly handles shallow clones
- Fixes the "but-graph inconsistent with the commit graph" issue when performing actions in the app
- Fixes an issue where creating a branch with a "#" symbol would have the hashtag filtered out
## CLI
- Repeated "undo" operations now work as expected (undoing further back in history)
- `but reword --json` now correctly produces the relevant JSON output
- `but redo` - new command for re-apply undone operations
- `but oplog list` now displays more useful descriptions of past operations
- `but teardown` now supports `--checkout-to` override to specify the branch to checkout
## TUI
- The TUI now updates on filesystem changes
- Repeated "undo" operations now work as expected (undoing further back in history)
- Added "redo" operation to re-apply undone operations
- Fixes a navigation bug while in move mode
ReleaseNotesUrl: https://github.com/gitbutlerapp/gitbutler/releases |
| 0.19.10 | 8 de maig del 2026 | 34,9 MB | 64 bits MSI 34,9 MB Notes de la versió## 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 |
| 0.19.9 | 21 d’abril del 2026 | 35,3 MB | 64 bits MSI 35,3 MB Notes de la versió## TUI
- Significant performance improvements starting and navigating in the TUI (`but tui`)
- It's now more intuitive to create commits at arbitrary positions above/below other commits in the stack
- Toasts are now stacked vertically
- Adds support for creating a new branch from the `[unassigned changes]`
- Fixes an issue where squashing a commit without a message was causing additional whitespace to be added to the commit message
- The branch picker now (press `t` to open) now lists the `[unassigned changes]` at the top
- The branch picker now has key-binds `ctrl+n/p` to move up/down and `ctrl+[` to close the picker.
- Pressing `i` in commit mode will use inline reword to write the commit message, for cases where you don't want to open an editor.
## CLI
- `but status` - significant performance improvements
- When `but push` is executed, the app UI will be updated to reflect the new state
- Fixes a windows-specific issue that was causing the CLI to crash with a stack overflow.
## Fixes and Improvements
- Fixes a bug where in some cases a branch is not correctly detected as push-able
- Fixes a issue with forge integrations resulting in a "Command forge_provider not allowed by ACL" error
- Fixes a GitLab-specific issue where loading the integration would fail with "invalid type: string "...", expected internally tagged enum GitLabAccount"
- Fixes an issue where in rare cases of the remote tracking branch being deleted, committing locally would fail
- Fixes a UI issue causing a "null is not an object (evaluating 'u.close')" error popup
- It is now easier to distinguish different self-hosted forge integrations (instance URL is shown)
- Improved error handling when diffing deleted resources |
| 0.19.8 | 17 d’abril del 2026 | 35,3 MB | 64 bits MSI 35,3 MB Notes de la versió## Changes
- Adds OpenRouter as a new AI provider in the app
- Adds loading states when squashing and uncommitting
- Conflicted commits now explicitly add a marker in the commit message
- Improved displaying of Pull Request CI/Mergeability state
- Panel resizers in the the app are now easier to grab
- Improved error message propagation when creating branches
- Improved moving of commits across stacks - conflicts are now detected ahead of time
- You can now configure "Kitty" for "open in terminal"
- Improved performance when entering "edit"/"conflict resolution" mode
## Fixes
- Fixes an issue with parsing leading space in directory names
- Fixes a windows fetch/push issue with some alternative SSH clients (e.g. PuTTY)
- Fixes an issue where successful pre-push hooks were incorrectly showing failure
- Fixes an issue with the undo / restore functionality and conflicted commits
- Fixes a GitLab issue with setting the "draft" flag for MRs
## TUI
- The `but tui` subcommand is no longer "hidden" from `--help`
- Adds support for moving hunks
- Adds support for discarding changes
- The details/preview pane can now be resized
- While editing a commit message, the message can be opened in a text editor
- Simplified branch creation (simply pressing b)
- Adds support for easy amending into a selection (shift+r for reverse rub)
- Adds support for invoking any but command with `:`
- Adds branch picker with fuzzy filtering (press t)
## CLI
- GitButler skill - `but skill install` now has an option to install in `.agents`
- Linux: fixes an issue preventing the `but gui` subcommand from opening the GUI correctly |
| 0.19.7 | 2 d’abril del 2026 | 35,1 MB | 64 bits MSI 35,1 MB Notes de la versió## TUI
GitButler now has a terminal UI (in addition to the CLI)!
If you love keybindings, try it out with the `but tui` command and feel free to share any feedback in #tui on Discord.
## Changes
- Improved performance when exiting edit mode
- Assigning / staging changes to branches is no longer constrained by commit dependencies
- Improved file selection behavior with when using the tree view
- Improved submodule support: it is now possible to add submodules as GitButler projects
- Improved diff rendering performance with large files
- Fixes a bug where in some cases the app could stop updating state from file changes
- Fixes an issue where oplog revert did not handle branches with no commits
- Fixes an issue where moving a branch to another stack was erroneously changing the stack order
- Fixes an issue with the absorb functionality where some changes were not being committed
## CLI
- Significant improvements to Agentic use (update your SKILL file with `but skill install`)
- Fixes an issue where concurrent commits would cause a "Database locked" error
- Fixes an issue where `but amend` and `but absorb` were breaking pre-push hooks
- Renamed `but branch tear-off <branch>` to `but branch move --unstack <branch>`
- Added `but clean` which removes empty branches in the workspace
- `but move` now unifies moving of commits and branches (including stacking/unstacking)
- `but uncommit` now has a `--discard` flag which drops the content in addition to uncommitting |
| 0.19.6 | 16 de març del 2026 | 34,3 MB | 64 bits MSI 34,3 MB Notes de la versió## Changes
- File previews now only show the selected file by default (change in Settings -> Appearance -> All-in-one diff)
- File diffs can now be popped out in a floating window
- Adds a option to preview SVGs as images (Settings -> Appearance -> Preview SVG)
- Improved rendering performance of diffs
- Fixes an issue with image diffing when switching between files
- Fixes an issue with the operations history where "unapply" stack was not being correctly tracked
## CLI
- Updated `but` skill files for improved Claude Code and Codex performance (update with `but skill install`)
- `but stack` - new command for moving branches on top of others to stack them (also `but branch move` as an alias to the same functionality)
- Fixes an issue "askpass broker not initialized" |
| 0.18.6 | 22 de gener del 2026 | 31,3 MB | 64 bits MSI 31,3 MB Notes de la versió## Changes
- Fixes an error "No matching entry found in secure storage"
- Updates to the UI padding and styles
## CLI Changes
- `but commit` with no branches creates a canned branch
- `but push` no longer prompts for a branch if there is only one
- `but push` will now detect commits in conflicted state and prevent pushing them
- `but absorb` now supports --dry-run
- `but setup` new command to setup even repos without a remote for GitButler use
- `but init` is now removed (replaced by setup)
- `but merge` - while in 'no-remote' mode this will merge applied branches into the target
- `but teardown` for going back to normal git mod |
| 0.18.5 | 20 de gener del 2026 | 31,1 MB | 64 bits MSI 31,1 MB Notes de la versió## Changes
- Fixes a bug with the Claude Code UI in the workspace where agent changes were not being correctly assigned to the respective branch
- Adds table support in places where markdown is being rendered
- Creating a branch with invalid characters now normalized the name without error
## CLI
- Operations with `but rub`, `but amend`, `but uncommit`, `but squash`, `but stage` will now prompt if there is an ambiguity of the provided identifier (eg. File and branch have the same name)
- Operations `but branch delete`, `but unapply` and `but restore` now prompt for confirmation (with --force still being available)
- `but pr new` no longer prompts for confirming the branch if there is only one branch |
| 0.18.4 | 19 de gener del 2026 | 31,0 MB | 64 bits MSI 31,0 MB Notes de la versió## Changes
- Drag-and-drop operations now indicate what the operation would be on hover while dragging
- Adds drag and drop support for hunks to create a new branch on drop
- Adds an option for configuring allowed image sources under the CSP config (applicable for self-hosted forges)
- Ctrl + a now selects all files in lists (similar to Cmd + a on Mac)
- Amending commits no longer resets author dates (commit dates are still updated, same as git)
- Improved Gerrit support with including a fallback URL generation the pushing a commit is a noop
- Renaming a branch to the same name is now a noop instead of an error
- Adds a new setting under "Appearance" for displaying file names first in the path
- Improved diff rendering performance
- Linux: added docs for Linux specific workarounds and fixes in https://github.com/gitbutlerapp/gitbutler/blob/master/LINUX.md
## Fixes
- Fixes a bug causing several operations to error out with "Stack is uninitialised"
- Fixes a Windows specific issue with poor performance with file watching under WSL
- Fixes a high CPU usage under Linux
- Fixes a bug preventing the creation of a branch underneath an existing stack
- Fixes an issue that was preventing the discarding of binary files
- Fixes an issue with Cursor hooks under Windows
- Fixes a GitLab specific issue where the rebase and squash method of merging did not work from the app
- Fixes a Claude Code UI bug where WebFetch permissions are stored in a wrong format
## CLI specific notes
### Changed
- Adds async fetching from remotes as well as forge info (e.g. PRs, CI)
- Invoking `but` without arguments is now defaulting to `but status` (configurable with `but alias`)
- Slow operations like pushing and fetching now have progress output
- Improved `but help` output
- `but status` no longer invokes a pager
- `but status` now includes PR and CI information by default
- `but status` now displays context-aware hints (disable by aliasing `but status --no-hint`)
- `but status --upstream` now shows upstream commits as well as merge-ability status of branches
- `but status` now indicates Git mode and `but switch-back` reverts the repository to GitButler managed branch (necessary until https://github.com/gitbutlerapp/gitbutler/issues/11866 is done)
- Fixes an issue where `but status --files` was assigning duplicate short IDs
- `but commit` now supports --file for providing commit message
- `but absorb` now provides detailed output of where changes went and why
- `but absorb` - fixed an issue where untracked files did not get absorbed correctly
- `but rub` now supports short IDs from `but diff` that can be used for assigning, amending etc
- `but push` - if no branch is specified, it now prompts the user
- `but push --dry-run` provides a summary of what would be pushed
### Renamed / aliased commands
- `but snapshot` was moved to `but oplog snapshot`
- `but review` is now `but pr`
- `but describe` is now `but reword`
- `but base update` is now `but pull`
- `but base check` is now `but pull --check`
- `but fetch` is now an alias to `but pull --check`
- `but uncommit <commit/file-in-commit>` is now an alias to the equivalent `but rub`
- `but amend <file> <commit>` is now an alias to the equivalent `but rub`
- `but stage <file/hunk> <branch/stack>` is now an alias to the equivalent `but rub`
- `but unstage <file/hunk>` is now an alias to the equivalent `but rub`
- `but squash` is now an alias to the equivalent `but rub` with an optional flag for picking a commit message
### New commands
- `but diff` - a new command for previewing diffs in files changes as well as branches and commits
- `but show` displays commit and branch details
- `but alias` allows setting up custom aliases (e.g `but stfu` -> `but status --files --upstream`)
- `but resolve` for resolving merge conflicts
- `but discard` removes/drops uncommitted changes
- `but update check` check for app updates
- `but update suppress` for suppressing app update hints
- `but pr new` now includes a commented |
| 0.18.3 | 15 de desembre del 2025 | 29,4 MB | 64 bits MSI 29,4 MB Notes de la versió## Changes
- Adds support for image preview and diffing (split and side-by-side views)
- Improved commit reordering graphics making the drop zones harder to miss
- Workspace rules have been redesigned and are now in the bottom left section
- Workspace rules created by Claude or Cursor hooks are no longer hidden from the list
- Adds support for the core.hooksPath config when handling pre-push hooks
## CLI
- but describe now takes -m for in-line message
- but status/rub - the ids are now less likely to run into ambiguity issues
- but review publish has been simplified (removed TUI)
- Fixes Windows specific issue with setting up `but.exe`
## Fixes
- Fixes a GitLab specific bug where creating a MR could fail with an "AbortSignal.timeout is not a function" error
- Fixes a GitLab issue when switching between projects with different GitLab servers/credentials
- Fixes a bug where committing a .docx file interrupts file watching
- Fixes an issue with hard wrapping in the commit input
- Fixes an issue where a dot in an SSH username is incorrectly encoded when cloning a repo
- Fixes an issue with Codegen templates incorrectly adding "[object Promise]" in the input field
- Fixes a rare issue resulting in the workspace failing to load with "ref-names must either be present in the first commit, or be the segment name" |
| 0.18.2 | 29 de novembre del 2025 | 21,8 MB | 64 bits MSI 21,8 MB Notes de la versió- Improved UX of branch reordering, making creating / splitting stacks of branches more intuitive
- Fixes a bug with commit message / PR description inputs preventing creating new lines (paragraphs)
- Codegen - fixes a bug with full commands not being shown in permission requests |
| 0.18.1 | 27 de novembre del 2025 | 21,8 MB | 64 bits MSI 21,8 MB Notes de la versió## Changes
- Codegen: Make the agent aware of the `but` CLI - allowing it to perform operations for branches and commits in the workspace
- Adds syntax highlighting for different JSON file type variants (jsonc/json5/jsonl)
- Adds tool-tip information for changes that have a dependency (locked)
- Adds a "Lanes & Branches" settings category for better settings organization
## Fixes
- Fixes a bug where after merging a branch from stack the app would erroneously display the merged commits
- Fixes a bug with the input editor causing incorrect auto wrapping
- Fixes an issue with using Tab to navigate to Modal inputs
- Fixes a bug preventing committing of submodule changes |
| 0.18.0 | 20 de novembre del 2025 | 23,1 MB | 64 bits MSI 23,1 MB Notes de la versió## Codegen
- Prompting is now done directly from the workspace (for a specific branch). The Codegen tab on the left has been removed
- The chat UX has been updated for better ergonomics and better display of tool calls
- Updated permissions system - better granularity and control for what the agent can perform
- Prompt history can now be accessed via arrow up / down of the input
- The prompt input has improved rendering for code snippets and referenced files
- Files and commits from the workspace can be dragged into prompts to reference them
## Changes
- The "Create Branch" button has been moved to the top right of the app
- When creating a branch there is now the option to have it placed in the left-most position
- In lists of files (e.g. uncommitted) it is now possible to select all (with Cmd+A)
- Release notes (when updating) can now display of previous release notes
- Added syntax highlighting for .cc files
## Fixes
- Fixes an issue with repository auto-fetch
- Fixes a bug allowing for stale selection in the UI after a branch is deleted
## CLI
- Added `but .` or `but /path/to/repo` which opens the GitButler app for the provided path
- `but status` now shows additional upstream data
- `but status` now shows worktree information if applicable
- `but status --json` output has been simplified for better scriptability
- `but log` has been removed (as its functionality overlapped with status)
- Fixes an issue where in some cases `but rub` would run into ID ambiguity unnecessarily |
| 0.17.6 | 7 de novembre del 2025 | 22,7 MB | 64 bits MSI 22,7 MB Notes de la versió## Changes
- Added syntax highlighting for 12 additional languages (Go, Elixir, Swift, YAML and more)
- Reduced content shift when previewing file diffs
## Fixes
- Fixes a bug where the app was not auto-fetching as configured
- Fixes a GitHub Enterprise specific bug with setting the correct host
## CLI changes
- Introduces new command `but absorb` which amends uncommitted changes in the appropriate commits
- Improved error message when forge credentials are invalid
- The --json flag can now be put after subcommands
- `but status` file paths in the JSON output are now UTF-8 strings instead of byte arrays
- `but branch` now performs `but branch list` instead of `but branch --help`
- Rub - it is now possible to invoke `but <id> <id>` as a shorthand to `but rub <id> <id>`
- Fixes an issue where `but status --review` was not showing the PR number
- `but review publish` can now take an id |
| 0.17.5 | 6 de novembre del 2025 | 22,5 MB | 64 bits MSI 22,5 MB Notes de la versió- Improved the layout of collapsed lanes
- You can now drag folders when using the tree file view option
- File list/tree view option is now lane-specific
- CLI: `but review` now has a prompt for picking a branch
- Fixes issues when scrolling in lists (eg. Claude Code messages)
- Fixes an issue with the visual abbreviation of long file paths
- Gerrit: fixes a bug where the push options were not being displayed
- Gerrit: fixed an issue where integrated commits were not being detected as integrated
- Gerrit: fixed a bug where "update workspace" was failing |
| 0.17.4 | 4 de novembre del 2025 | 22,4 MB | 64 bits MSI 22,4 MB Notes de la versió## Collapsible lanes
It is once again possible to fold lanes. Thank you for your patience with this one!
## Codegen (Claude Code)
- Fixes an issue preventing usage without the "allow all" toggle
- TODOs are now displayed at the top of the chat
## GitHub Enterprise
- Fixes a bug where login is incorrectly attempted against `github.com`
- Fixes a bug where the link to the documentation leads nowhere
## Gerrit
- Project add now checks if a repo has a Gerrit remote and suggests enabling Gerrit Mode
- Adds a toggle in the project settings to enable/disable Gerrit Mode
- Fixes an issue where in some cases an extra white space is added between commit trailers
## But CLI
- `but status` as well as `but oplog` now use local time with timezone
- Fixes an issue where `but restore` did not work when picking a very old snapshot
## Linux
- There are now Linux ARM64 builds available |
| 0.17.3 | 1 de novembre del 2025 | 22,3 MB | 64 bits MSI 22,3 MB Notes de la versió- Fixes an issue where Change-ID was incorrectly added to commit messages of non-Gerrit repos
- Fixes an issue where remotes are incorrectly detected as Gerrit ones on project add |
| 0.17.2 | 31 d’octubre del 2025 | 22,3 MB | 64 bits MSI 22,3 MB Notes de la versió- Fixes an issue where in some conditions scrolling was glitchy
- Fixes a bug where navigating to the branches tab produces error toasts "undefined is not an object" |
| 0.17.1 | 30 d’octubre del 2025 | 22,3 MB | 64 bits MSI 22,3 MB Notes de la versió# 0.17.1
## GitHub Integration
- Adds support for Github Enterprise
- Adds support for configuring personal access tokens a credential option
## CLI
- Adds support for creating PRs `but review --help`
## Fixes
- Fixes an issue where Azure DevOps remotes are incorrectly considered Gerrit on project add
- Fixes a Gerrit specific issue where commits with a "private" option did not parse the review ID correctly
- Fixes a GitLab specific issue where Draft MRs were not prefixed correctly
- Fixes an issue where in some cases applying a branch will incorrectly prompt for a fork name
# 0.17.0
## Gerrit support
GitButler now supports working Gerrit remotes. Docs: https://docs.gitbutler.com/features/gerrit-mode
- Commits and pushes are performed in the way that a Gerrit server expects them
- Adding topics, hashtags, status is supported
- Review URLs are accessible from GitButler
- Accessible with both the GUI and the CLI
## GitHub integration
- It is now possible to configure different GitHub credentials (eg. Work and Private) for different projects in the app
- It is no longer required to be logged in with a GitButler account to be able to configure a GitHub integration.
## CLI
- You can now setup a shell auto completion `eval "$(but completions zsh)"` (NB: replace zsh with your shell of choice and add this to your respective `~/.zshrc` file)
- It is now possible to push with the CLI (`but push --help`)
- Status can now display code review status (`but status -r) (GitHub and Gerrit supported)
- When referencing branch names, ambiguity is now gracefully handled.
## CLI Breaking changes
- The `but` binary is now the same as the one that launches the UI (for improved compatibility) - it will be necessary to re-link it from the app settings)
## Codegen (Claude Code)
- There is now an experimental feature toggle "Codegen (workspace)" which enables the ability to use Claude Code directly from the workspace (in-line with branch and commit data)
- It is now possible to reference project files (begin typing @filename for fuzzy searching)
- Pressing enter now produces a new line (and Cmd/Control + Enter submits) - this can be reversed in the settings
## Other changes
- GitLab - Fixes an issue where "create merge request" does nothing
- Adds Haiku as a commit/branch name generation model option
- Fixes an issue where when setting a new base branch did not perform a checkout
- Improved submodule support |
| 0.17.0 | 30 d’octubre del 2025 | 22,3 MB | 64 bits MSI 22,3 MB Notes de la versió## Gerrit support
GitButler now supports working Gerrit remotes. Docs: https://docs.gitbutler.com/features/gerrit-mode
- Commits and pushes are performed in the way that a Gerrit server expects them
- Adding topics, hashtags, status is supported
- Review URLs are accessible from GitButler
- Accessible with both the GUI and the CLI
## GitHub integration
- It is now possible to configure different GitHub credentials (eg. Work and Private) for different projects in the app
- It is no longer required to be logged in with a GitButler account to be able to configure a GitHub integration.
## CLI
- You can now setup a shell auto completion `eval "$(but completions zsh)"` (NB: replace zsh with your shell of choice and add this to your respective `~/.zshrc` file)
- It is now possible to push with the CLI (`but push --help`)
- Status can now display code review status (`but status -r) (GitHub and Gerrit supported)
- When referencing branch names, ambiguity is now gracefully handled.
## CLI Breaking changes
- The `but` binary is now the same as the one that launches the UI (for improved compatibility) - it will be necessary to re-link it from the app settings)
## Codegen (Claude Code)
- There is now an experimental feature toggle "Codegen (workspace)" which enables the ability to use Claude Code directly from the workspace (in-line with branch and commit data)
- It is now possible to reference project files (begin typing @filename for fuzzy searching)
- Pressing enter can produce a new line (and Cmd/Control + Enter submits) - this can be enabled in the settings
## Other changes
- GitLab - Fixes an issue where "create merge request" does nothing
- Adds Haiku as a commit/branch name generation model option
- Fixes an issue where when setting a new base branch did not perform a checkout
- Improved submodule support |
| 0.16.10 | 14 d’octubre del 2025 | 50,3 MB | 64 bits MSI 50,3 MB Notes de la versió# 0.16.10
- Fixes a bug where empty stacks cause a "BUG: do not pop off the last branch, remove the whole stack" error
- CLI: adds branch unapply subcommand
- Adds a config for using the native window title bar
# 0.16.9
## New features
- You can now cherry pick commits from arbitrary (unapplied) branches into your workspace (via the commit context menu in the branches tab)
- Adds the ability to spit a stacked branch to be independent, parallel branch (if there are no hard dependencies between the stacked branches)
- You can now create on-demand Oplog snapshots (on the Oplog/history tab)
## Claude Code
- Claude Code: Adds support for message queueing (you can write more prompts while CC is still working)
- Claude Code: Adds support for context compaction (automatically when the limit is reached and also manually on demand)
- Claude Code: Improved rendering of tool calls
## New settings / config options
- Adds a new setting for configuring configure the auto-fetch interval
- Adds a new setting for disabling the PR autofill (when there is a single commit)
- Adds support for setting Trae as an "open with <editor>" option
## CLI
- Status now shows "remote only" commits as well
- Base update allows for choosing the rebase approach
- Describe can now rename branches as well
- Brach can now also delete with a 'delete' subcommand
- Improved handling when running from a nested folder (not the repo root)
## Fixes
- Fixes a GitLab issue where creating a "draft" merge request creates a regular MR
- Fixes a bug where some local branches were not being listed
- Fixes a bug where a commit message being edited resets if the editor is switched from in-line to floating mode
- Fixes a bug with integrating branch upstream changes |
| 0.16.9 | 14 d’octubre del 2025 | 52,5 MB | 64 bits MSI 52,5 MB Notes de la versió## New features
- You can now cherry pick commits from arbitrary (unapplied) branches into your workspace (via the commit context menu in the branches tab)
- Adds the ability to spit a stacked branch to be independent, parallel branch (if there are no hard dependencies between the stacked branches)
- You can now create on-demand Oplog snapshots (on the Oplog/history tab)
## Claude Code
- Adds support for message queueing (you can write more prompts while CC is still working)
- Adds support for context compaction (automatically when the limit is reached and also manually on demand)
- Improved rendering of tool calls
## New settings / config options
- Adds a new setting for configuring configure the auto-fetch interval
- Adds a new setting for disabling the PR autofill (when there is a single commit)
- Adds support for setting Trae as an "open with <editor>" option
## CLI
- Status now shows "remote only" commits as well
- Base update allows for choosing the rebase approach
- Describe can now rename branches as well
- Brach can now also delete with a 'delete' subcommand
- Improved handling when running from a nested folder (not the repo root)
## Fixes
- Fixes a GitLab issue where creating a "draft" merge request creates a regular MR
- Fixes a bug where some local branches were not being listed
- Fixes a bug where a commit message being edited resets if the editor is switched from in-line to floating mode
- Fixes a bug with integrating branch upstream changes |
| 0.16.8 | 29 de setembre del 2025 | 50,4 MB | 64 bits MSI 50,4 MB Notes de la versió## Changes
- Previews of uncommitted files can now be closed without clearing the selection
- Improved handling non-UTF8 strings in diffs
- Adds syntax highlighting for AutoHotkey (.ahk) files
- Adds syntax highlighting for C files
- Added a bunch of GitButler CLI commands
## Fixes
- Fixes an issue with selecting text in the commit input box
- Fixes a bug where it was possible for the app to get stuck in an "Editing a commit" state
- Fixes a bug where the config for enabling / disabling app "check for app updates" wasn't working
- Fixes a bug where on first repository setup the target branch may be incorrectly added as a workspace branch
- Fixes an issue where under some conditions the app errors with "Bug: At least one user commit on top"
- Fixes syntax highlighting issues when rendering C files |
| 0.16.7 | 25 de setembre del 2025 | 50,1 MB | 64 bits MSI 50,1 MB Notes de la versió- Fixes a bug specific to the GitLab integration resulting in a "Failed to find GitLab client" error message
- Conflicts are now displayed in a more prominent way
- Hunk line selection: adds context menu options to (de)select all lines as well as invert a selection |
| 0.16.6 | 23 de setembre del 2025 | 50,0 MB | 64 bits MSI 50,0 MB Notes de la versió- Claude Code: Improve the accuracy of estimated token usage
- Fixes a bug where after reloading the app the window title is duplicated
- Fixes a performance bug related to accessing the Operations History (causing the app to slow down) |
| 0.16.5 | 19 de setembre del 2025 | 49,7 MB | 64 bits MSI 49,7 MB Notes de la versió- Claude Code: adds support for `/add-dir <path>`
- Claude Code: fixes a bug which causes some MCP server configurations to result in errors
- Fixes a Linux-specific issue in reading the config file settings.json |
| 0.16.4 | 18 de setembre del 2025 | 49,7 MB | 64 bits MSI 49,7 MB Notes de la versió- GitLab: Fixes a bug where integration settings are not being saved
- Claude Code: Fixes styling issues with the input and messages
- Claude Code: Ctrl+C now cancels current generation
- Fixes a bug where certain feature flags that are now on by default are disabled after removing the app settings.json
- The project name is now part of the window title
- Simplifies the onboarding flow by skipping the "Configure Git authentication screen" |
| 0.16.3 | 17 de setembre del 2025 | 49,7 MB | 64 bits MSI 49,7 MB Notes de la versió0.16.3
- Claude Code: Fixes a regression from 0.16.2 where the app was failing to invoke a permissions MCP server (for operations approvals)
0.16.2
## Claude Code (Agents)
- Adds support for Planning Mode
- The app now respects the MCP Servers that are configured
- Branches in the workspace now have a context menu option to start an Agent (Claude) session
## Keyboard navigation
- Arrow keys can now be used to move around files, branches and commits
- Escape now closes the current preview of a file, commit or branch
- Vimium-style navigation - you can press the F key to trigger an overlay followed by a key sequence in order to navigate without the mouse
## Other Changes
- If a repository has a GitHub remote and a GitHub integration is not configured, the app displays a hint
- When integrating upstream changes (from the remote of your branch) you now have the option to pick upstream, skip and squash
## Fixes
- Claude Code: Fixes a Windows specific issue where a terminal window was unnecessary created
- Claude Code: Fixes an issue with the order in which global/local settings.json were being evaluated
- Fixes a missing font during project onboarding
- Fixes a bug with previewing stacked branches where diffs from branches underneath it were included |
| 0.16.2 | 17 de setembre del 2025 | 49,6 MB | 64 bits MSI 49,6 MB Notes de la versió## Claude Code (Agents)
- Adds support for Planning Mode
- The app now respects the MCP Servers that are configured
- Branches in the workspace now have a context menu option to start an Agent (Claude) session
## Keyboard navigation
- Arrow keys can now be used to move around files, branches and commits
- Escape now closes the current preview of a file, commit or branch
- Vimium-style navigation - you can press the F key to trigger an overlay followed by a key sequence in order to navigate without the mouse
## Other Changes
- If a repository has a GitHub remote and a GitHub integration is not configured, the app displays a hint
- When integrating upstream changes (from the remote of your branch) you now have the option to pick upstream, skip and squash
## Fixes
- Claude Code: Fixes a Windows specific issue where a terminal window was unnecessary created
- Claude Code: Fixes an issue with the order in which global/local settings.json were being evaluated
- Fixes a missing font during project onboarding
- Fixes a bug with previewing stacked branches where diffs from branches underneath it were included |
| 0.16.1 | 12 de setembre del 2025 | 49,3 MB | 64 bits MSI 49,3 MB Notes de la versió## Changes
- Claude Code: Fixes an issue that was preventing the use of custom endpoints / providers (enabled in the in-app settings of the Claude tab)
- Claude Code: Fixes a scrolling issue when inputting large prompts
- Claude Code: Improves the way CC sessions are indicated for branches in the workspace
- Fixes a bug with diffing of non-UTF-8 text
- Displays a toast if applying a branch causes another, conflicting, branch to be unapplied |
| 0.15.20 | 10 de setembre del 2025 | 49,3 MB | 64 bits MSI 49,3 MB Notes de la versió# 0.15.20
- Adds support for color-blind diff preview colors (enabled in settings -> appearance)
# 0.15.19
## Experimental Claude Code UI and integration
- In settings/experimental it is now possible to enable a new Claude Code integration - feel free to try it out and let us know what you think!
## Changes
- Settings are now displayed in modals instead of navigating away from the current view
- Adds syntax highlighting for Kotlin and Protobuf files
- Branch headers no longer have dedicated copy name & create empty commit buttons (functionality is still accessible from the context menu)
- Claude Code hooks integration: If you are using Claude hooks, branches that have an associated session will display it in the header
## Fixes
- Fixes issues with horizontal scrolling
- Fixes a bug where context menus would reposition themselves
- Fixes a bug that was preventing partial committing of hunks
- Fixes an issue with IME input (relevant for Japanese, Chinese, or Korean character input)
- Fixes an issue with the word diff rendering (if configured in settings)
- Fixes an issue with renaming a branch to a new one containing a '/' character
- Fixes a bug where files changed from link to text fail to be shown as uncommitted changes
- Fixes a bug where changes to the executable bit of files were not being highlighted at all
- Fixes a GitLab specific issue with the "open in browser" link |
| 0.15.19 | 10 de setembre del 2025 | 49,3 MB | 64 bits MSI 49,3 MB Notes de la versió## Experimental Claude Code UI and integration
- In settings/experimental it is now possible to enable a new Claude Code integration - feel free to try it out and let us know what you think!
## Changes
- Settings are now displayed in modals instead of navigating away from the current view
- Adds syntax highlighting for Kotlin and Protobuf files
- Branch headers no longer have dedicated copy name & create empty commit buttons (functionality is still accessible from the context menu)
- Claude Code hooks integration: If you are using Claude hooks, branches that have an associated session will display it in the header
## Fixes
- Fixes issues with horizontal scrolling
- Fixes a bug where context menus would reposition themselves
- Fixes a bug that was preventing partial committing of hunks
- Fixes an issue with IME input (relevant for Japanese, Chinese, or Korean character input)
- Fixes an issue with the word diff rendering (if configured in settings)
- Fixes an issue with renaming a branch to a new one containing a '/' character
- Fixes a bug where files changed from link to text fail to be shown as uncommitted changes
- Fixes a bug where changes to the executable bit of files were not being highlighted at all
- Fixes a GitLab specific issue with the "open in browser" link |
| 0.15.18 | 6 de setembre del 2025 | 49,1 MB | 64 bits MSI 49,1 MB Notes de la versió## Changes
- Integrating upstream commits (from the remote) now offers an option to resolve conflicts
- The branches tab will now group PRs with request for review at the top of the list
- Adds the ability to search for a project in the project dropdown
- When updating the workspace the app will remember the "delete branch" choice
- Improved error handling when adding a new project
- Adds support for git commit-msg hooks
- Adds support for git pre-push hooks
## Fixes
- Fixes a bug with the floating commit message editor inserting semicolons unintentionally
- Fixes an issue with setting git user name and email on app initial setup
- Fixes an issue preventing force-pushing of non-fastforwardable references
- Fixes a Windows specific issue where in some cases repos cant be opened due to trust-related issues
- Fixes a panic which can prevent the app from loading the workspace branches
- Fixes a bug where when stacking merged branches from the bottom of the stack may still show up in the UI
- Fixes a performance issue where in some cases loading the workspace branches takes a really long time
- Fixes an issue where the "Open in browser" feature for GitLab did not respect the "http" protocol configured in the forge override URL |
| 0.15.17 | 31 d’agost del 2025 | 48,4 MB | 64 bits MSI 48,4 MB Notes de la versió## Fixes
- Fixes a Windows specific issue where setting of Git user name and email through the app was failing |
| 0.15.16 | 28 d’agost del 2025 | 48,4 MB | 64 bits MSI 48,4 MB Notes de la versió## Changes
- Reverts the change in the file pre-selecting default behavior when starting a commit (introduced in 0.15.13).
- You can now configure what files are auto-staged when starting a commit (under Settings -> Appearance): Stage all (default), Stage selected, Stage none |
| 0.15.15 | 26 d’agost del 2025 | 48,4 MB | 64 bits MSI 48,4 MB Notes de la versió### Fixes
- Prevents a potential failure on graph post-processing
### Changes
- Branch page can filter and search
- Add icons for Godot Engine (by contributor @nshcr 🎉) |
| 0.15.14 | 25 d’agost del 2025 | 48,4 MB | 64 bits MSI 48,4 MB Notes de la versió### Fixes
- Fixes a condition in which updating workspace would be stuck loading and API errors would be thrown
## Included in 15.13
### Fixes
- Previewing a branch in the branches page fetches the information correctly
- Hunk locks determine contained hunks correctly
- Cancelling the creation of a project is handled gracefully
- Handle stale selection of PRs in the branches page gracefully
- Reset the branch name to the original if the update fail (oh so graceful)
- Don’t automatically set the SSH key before it’s input correctly
- UI: Align the Commit ruler to the top
- Don’t ask for the AI credentials until needed, in a graceful way
- Fixes text wrapping in the Hunk Diffs (by contributor @nshcr 🎉)
### Changes
- Auto-stage the selected files on commit start, if any
- Add hot-key tip for Review Creation
- Use the deduced push remote if there’s no fetch remote for branches
- Display the Push Target on the push button tooltip
- Adds option to submit graph with the user feedback
- Moving a commit that is locked to a branch displays a popup instead of a scary error message
- Don’t attach a stub commit author, instead ask for author details if not configured
- Context submenus 👌
- Add icon mappings for .vue, .cts, .mts, .graphqls (by contributor @nshcr and @4O4 🎉) |
| 0.15.13 | 25 d’agost del 2025 | 48,3 MB | 64 bits MSI 48,3 MB Notes de la versió### Fixes
- Previewing a branch in the branches page fetches the information correctly
- Hunk locks determine contained hunks correctly
- Cancelling the creation of a project is handled gracefully
- Handle stale selection of PRs in the branches page gracefully
- Reset the branch name to the original if the update fail (oh so graceful)
- Don’t automatically set the SSH key before it’s input correctly
- UI: Align the Commit ruler to the top
- Don’t ask for the AI credentials until needed, in a graceful way
- Fixes text wrapping in the Hunk Diffs (by contributor @nshcr 🎉)
### Changes
- Auto-stage the selected files on commit start, if any
- Add hot-key tip for Review Creation
- Use the deduced push remote if there’s no fetch remote for branches
- Display the Push Target on the push button tooltip
- Adds option to submit graph with the user feedback
- Moving a commit that is locked to a branch displays a popup instead of a scary error message
- Don’t attach a stub commit author, instead ask for author details if not configured
- Context submenus 👌
- Add icon mappings for .vue, .cts, .mts, .graphqls (by contributor @nshcr and @4O4 🎉) |
| 0.15.12 | 18 d’agost del 2025 | 48,0 MB | 64 bits MSI 48,0 MB Notes de la versió- Adds support for splitting a branch at any commit (via a commit context menu action)
- Fixes a 0.15.11 regression where the force push option was not displayed when a branch had remote-only commits that could be overwritten |
| 0.15.11 | 15 d’agost del 2025 | 47,9 MB | 64 bits MSI 47,9 MB Notes de la versió## Changes
- Workspace Rules are now enabled by default. This allows you to configure automatic assignment of new changes to branches that you specify
- Claude Code Hooks: It is now possible to change which branch changes are assigned to (using the Workspace Rules UI)
- GitLab: Adds support for MR templates
- Adds an option for protecting remote commits during force pushing (enabled in project settings)
- Updated UI of commit/diff previewing
## Fixes
- Restores the ability to open a project in a new window with Cmd/Control click
- Fixes a bug with pushing stacked branches where not all branches that require pushing are pushed
- Fixes an issue navigating to user settings as a new user
- Fixes an issue where commit hook failures were not displaying the error details
- Fixes a missing delete button on empty stacked branches
- Fixes a reactivity bug within the project settings view |
| 0.15.10 | 8 d’agost del 2025 | 47,2 MB | 64 bits MSI 47,2 MB Notes de la versió## Changes
- Adds support for GPT-5
## Fixes
- Fixes a UI regression from 0.15.9 where in some cases the workspace content simply does not load (with no errors)
- Fixes an issue where the "test signing" button was not working correctly
- Fixes a bug where selected files are not rendered with the correct background color
- Markdown line separators are now correctly rendered |
| 0.15.9 | 7 d’agost del 2025 | 46,9 MB | 64 bits MSI 46,9 MB Notes de la versió## Changes
- Introduces Workspace Rules - an experimental feature which lets you set up rules for assigning new code changes to lanes based on rules you configure (similar to how email rules work). Enable this under "Experimental" and let us know what you think!
- Adds support for negative git refspecs (allowing you to exclude branches from being pushed fetched)
- The "New workspace backend", introduced in 0.15.7 is now enabled by default which improves the detection of squash merged branches.
## Fixes
- Corrects an issue where in some cases the "Push" button in not shown to be in the correct state
- Fixes an issue with entering Japanese Kana to Kanji characters (IME)
- When the remote integration is GitLab, the correct gitlab pandas will be displayed
- Fixes an issue where fetching did not ignore reference lock failures
- Fixes a bug where the project settings were not accessible if gitbutler/workspace is not checked out
- Output from commit hooks is now correctly displayed in a toast
- Fixes a bug with the Claude Code hooks integration where a hooks error was triggering a loop in the CC agent
- Fixes a bug with the Claude Code hooks integration where empty stacks are incorrectly created even when no new code changes were generated |
| 0.15.8 | 29 de juliol del 2025 | 46,9 MB | 64 bits MSI 46,9 MB Notes de la versió## 0.15.7
### Changes
- The "New workspace backend" (enabled in the Experimental section of settings) now helps with correctly detecting squash merged PRs - feel free to try it out and share your feedback
- The PR badges now include the PR number
- Selected commits / branches now show the total number of lines added / removed
- Provides a notification/toast message if the GitHub token is no longer valid
- Pre-commit hooks are now also executed on commit amend operations as well
### Fixes
- Fixes a bug in the GitHub integration where CI status was polled excessively
- Fixes an issue where files in commits in conflicted state could not be selected
- Fixes a bug where the Pull Request description input text would introduce hard wrapping in the text
## 0.15.8
### Fixes
- Fixes a regression where in some conditions creating a PR produces an error toast "null is not an object"
- Fixes a bug where for some out of date workspaces, previewing the changes in a branch would result in additional changes being incorrectly shown |
| 0.15.7 | 29 de juliol del 2025 | 46,9 MB | 64 bits MSI 46,9 MB Notes de la versió## Changes
- The "New workspace backend" (enabled in the Experimental section of settings) now helps with correctly detecting squash merged PRs - feel free to try it out and share your feedback
- The PR badges now include the PR number
- Selected commits / branches now show the total number of lines added / removed
- Provides a notification/toast message if the GitHub token is no longer valid
- Pre-commit hooks are now also executed on commit amend operations as well
## Fixes
- Fixes a bug in the GitHub integration where CI status was polled excessively
- Fixes an issue where files in commits in conflicted state could not be selected
- Fixes a bug where the Pull Request description input text would introduce hard wrapping in the text |
| 0.15.5 | 24 de juliol del 2025 | 47,4 MB | 64 bits MSI 47,4 MB Notes de la versió## Changes
- Claude Code hooks - if a branch that was expected is missing, a new one will be created
- GitLab specific - the app now uses correct icons
- Linux specific - the error message related to missing keychain now provides a hint about installing one
- Adds support for squashing commits upwards (parent to child)
## Fixes
- Fixes a Windows-specific bug where after adding a project the "let's go" button did not work
- Fixes a bug with edit mode reactivity
- Fixes an issue with squashing multiple commits (e.g. all in a branch)
- Fixes a reactivity bug when switching away and back from the integration branch outside of the app
- Fixes an issue where in-progress commit messages were stored not per-project but globally
- Fixes a bug where the app would incorrectly report "expected to be in edit mode" |
| 0.15.4 | 22 de juliol del 2025 | 48,2 MB | 64 bits MSI 48,2 MB Notes de la versió## Changes
- Adds a feature allowing a change to be "split" from a branch (right-click action on files while previewing a branch)
## Fixes
- Fixes the handling of the LFS info message, providing a "dont show again" option
- Fixes a bug where when a new repository is being added an error toast is incorrectly emitted
- Fixes issues related to the GitLab integration, correctly surfacing only relevant errors
- Fixes a bug where during the initial app setup, it was not possible to drag to move the app window
- Fixes an issue where the UI was not correctly updated after project deletion
- Fixes a bug in the experimental new workspace backend where in some conditions unexpected commits were returned as part of the workspace branches |
| 0.15.3 | 21 de juliol del 2025 | 48,1 MB | 64 bits MSI 48,1 MB Notes de la versió## Changes
- Previewing committed files no longer expands into a third column (rendered underneath)
- Claude Code hooks: When running multiple CC sessions, GitButler generates better branch names
- The create branch modal can now be used for creating stacked batches as well
- Branches with Pull Requests now have glanceable CI status
- Commit message input - The Ruler and Wrap lines are now combined in the same button
- Experimental: A new workspace backend can be toggled in the "experimental" section. This can help with detecting squash-merged branches as integrated but it has not been fully tests yet
- The v2 UI is no longer available - if there are limitations in the UI that affect your workflow, please reach out so that we can fix them (We are already working on re-introducing an equivalent to "default lane")
## Fixes
- Fixes a bug with edit (merge conflict) mode would erroneously add uncommitted files after exiting
- Fixes a bug where drag and drop of individual hunks did not work
- Fixes a bug with committing parts of hunks, where under some conditions, the operation would fail
- Fixes a linux-specific bug where credentials are not persisted in the keychain past reboot |
| 0.15.2 | 9 de juliol del 2025 | 49,6 MB | 64 bits MSI 49,6 MB Notes de la versió## Experimental: Agentic Coding integration
If you are using tools like Cursor or Claude Code you can now better integrate GitButler in your workflow. Cursor/VSCode/Zed can now interact with GitButler over MCP, while Claude Code can be integrated via Hooks. You can read more on the docs page: https://docs.gitbutler.com/features/ai-integration/ai-overview
Both features are enabled via the "Experimental" feature toggle as we are tuning the behavior.
Please feel welcome to share any feedback, suggestions and requests on Discord, GitHub Issues or the in-app feedback button so that we can create the best workflow possible.
## Changes
- The panel for "Unassigned" files can now be collapsed to create more space
- Improved lane reordering - dragging a lane will now scroll when the window edge is approached
- Commit message generation button once again has the "extra concise" and "use emojis" options available
- Improved git-lfs handling via an in-app info message
- Improved the way dependencies are communicated when diffs or parts of diffs depend on commits in a particular lane
## Fixes
- Fixes a bug with text selection in diffs - lines are no longer selected on single click
- Fixes a bug where in some cases gaps may occur between lanes
- Fixes a bug where committing symlinks were incorrectly including the content of the file they link to
- Fixes a bug where selecting multiple files while using the file-tree view was making incorrect selections
- Fixes a bug where individual uncommitted hunks were not draggable
- Fixes keyboard arrows navigation for lists of files
- Fixes an issue with PR template selection
- Fixes a bug with the commit message editor where opening and closing it would keep adding new lines |
| 0.15.1 | 1 de juliol del 2025 | 49,4 MB | 64 bits MSI 49,4 MB Notes de la versió# 0.15.1
- On commit creation the "commit goes here" indicator now always defaults to the top of the branch
- Fixes a bug where it was not possible to move file assignments from one lane to another
- Fixes a bug where it was not possible to scroll the changes preview of a lane
- Fixes a bug with lane reordering
# 0.15.0
## New default GitButler UI
- The v3 interface is now the default and it supports nearly all functionality that the old one did and much more.
- You can temporarily switch back to the old UI under Experimental in Global Settings, but heads up — this option will be removed in a future release.
Let us know if anything feels off or gets in your way!
## Changes
- Pan-to-scroll: It is now possible to click to pan left and right in the workspace instead of horizontal scrolling
- Pop-out commit input: It is now possible to make the commit input box floating if you wish to write a more detailed message
- Scroll into view when previewing: When a file is being previewed, if the preview happens to be off-screen, it will be scrolled into view
- When a branch lane is being drag-reordered the new position is dynamically visualized
- When a branch lane is being reordered, the details panel is automatically collapsed
- There is now an indication next to uncommitted files if they depend on commit from a particular branch
- Adds an option to configure a custom OpenAI API endpoint
## Fixes
- Fixed a bug where when committing sometimes the message title is not being focused
- Fixes a bug where the "squash all" option was not being shown
- Fixes a bug where in some rare conditions the app gets stuck in "committing" mode after all changes have been discarded
- Fixes a bug where in some cases unapplied pull requests had a double "Apply" button
- Fixes a bug where selecting files for previewing did not work if the name contained ':' |
| 0.14.35 | 20 de juny del 2025 | 48,5 MB | 64 bits MSI 48,5 MB Notes de la versió## Changes
- Added the ability to reorder lanes
- Committing into a new lane is now always happens on the left for consistency and it dims the other lanes
- Added a horizontal scrolling indicator for the lanes
- Added a context menu for copying the commit hash
## Fixes
- Fixes a bug where, if there are git submodules present, in some rare cases diffs my not be shown
- Fixes a bug where an uncommitted file is partially assigned to a lane, then dragging the file to amend should only use the assigned part of the file
- Fixes a bug where it was not possible to move commits between stacked branches
- Fixes a bug where double clicking on text to select it would resize the lane
- Fixes a bug where on the branches view, the commits in a branch were not scrollable
- Fixes a bug where when committing in a stack the "commit goes here" indicator was duplicated
- Fixes a bug where creating a new stacked branch was immediately expanding it unnecessarily
- Fixes a bug in the commit input where the character count was obscuring the last characters typed |
| 0.14.34 | 17 de juny del 2025 | 48,5 MB | 64 bits MSI 48,5 MB Notes de la versió# 0.14.33
## Changes specific to the v3 UI
The workspace layout and flow has been overhauled based on feedback from our community.
Thank you to everybody who submitted feedback and suggestions! We'd love to hear what you think of these changes!
### Layout
- The "preview" panel in the middle has been removed
- Commits and files are now previewed by dynamically expanding lanes to the right
- Multiple lanes can now be resized at the same time with shift+dragging the resizer
### Commit / Pull Request creation
- The input for creating commits and PRs is now in-place, closer to where the action was performed
- The commit/PR input now has the ability to switch to rich editor mode on-demand
### Assigning uncommitted changes to lanes
- This functionality is now finally available in v3
- It is now possible to drag files or specific changes to a lane
- When committing, it is also possible to pick unassigned changes, making this feature optional
### Other changes
- Fixes a bug in the commit message generation not correctly considering the files to be committed
- Fixes a bug that was preventing drag to move file from a commit into the uncommitted area
- Fixes a bug where in some very rare cases committing yields a "hunks must be in order" error
# 0.14.34
- Fixes a regression where in the v2 UI the "Create PR" buttons were not rendered
- Fixes a bug where under some conditions previewing of diffs fails with an error |
| 0.14.32 | 4 de juny del 2025 | 45,8 MB | 64 bits MSI 45,8 MB Notes de la versió## Changes
- Improves the performance of the "update workspace" action
- Fixes a condition under which "update workspace" never completes
Note: The last couple of releases have a mention of this regression - We do apologize for this. The offending feature that causes this has been taken out and we will approach these changes with more caution moving forward. |
| 0.14.31 | 3 de juny del 2025 | 45,8 MB | 64 bits MSI 45,8 MB Notes de la versió## Changes
- Fixes a regression with the "update workspace" modal where if there is no forge integration configured (GitHub/ GitLab), loading never completes |
| 0.14.30 | 2 de juny del 2025 | 45,8 MB | 64 bits MSI 45,8 MB Notes de la versió## Changes specific to the v3 UI
- The "generate message" button is now more prominent
- Fixes an issue where applying a pull request was incorrectly suggesting adding an additional remote even when that's not needed
- Fixes a bug where in some cases adding a new repository was caused flickering |
| 0.14.29 | 31 de maig del 2025 | 45,7 MB | 64 bits MSI 45,7 MB Notes de la versió## 0.14.29
- Fixes a regression with the "update workspace" modal where loading never completes (attempt II)
- Improvement to the derivation of branch push status |
| 0.14.28 | 30 de maig del 2025 | 45,7 MB | 64 bits MSI 45,7 MB Notes de la versió## 0.14.28
- Fixes a regression with the "update workspace" modal where loading never completes
## 0.14.27
### Changes
- Adds support for Sonnet 4 and Opus 4 models
- Fixes a Linux specific bug where filesystem events without a path can crash the file system watching
- Fixes a scrolling issue in error popups
- Fixes a bug where in some conditions git author is not correctly checked on project add
### Changes specific to the v3 UI
- Squash-merged branches are now correctly detected as integrated (if there is a GitHub/Lab integration available)
- It is now possible to uncommon only a specific file in a commit via a right click menu action
- Added support for applying a branch to the workspace from fork
- Improved markdown rendering (Commits and PRs)
- Fixes a bug in edit (conflict resolution) mode where a large number of files was not scrollable and obscured the save/cancel actions
- Fixed a bug with causing flickering while scrolling diffs
- Fixes a bug where the file vs tee view toggle buttons could get out of sync
- Fixes a bug where upon navigating to a different project new file changes were not shown (refreshed)
- Fixes a bug where the submodule setting ignore = all was not respected |
| 0.14.27 | 30 de maig del 2025 | 45,7 MB | 64 bits MSI 45,7 MB Notes de la versió## Changes
- Adds support for Sonnet 4 and Opus 4 models
- Fixes a Linux specific bug where filesystem events without a path can crash the file system watching
- Fixes a scrolling issue in error popups
- Fixes a bug where in some conditions git author is not correctly checked on project add
## Changes specific to the v3 UI
- Squash-merged branches are now correctly detected as integrated (if there is a GitHub/Lab integration available)
- It is now possible to uncommon only a specific file in a commit via a right click menu action
- Added support for applying a branch to the workspace from fork
- Improved markdown rendering (Commits and PRs)
- Fixes a bug in edit (conflict resolution) mode where a large number of files was not scrollable and obscured the save/cancel actions
- Fixed a bug with causing flickering while scrolling diffs
- Fixes a bug where the file vs tee view toggle buttons could get out of sync
- Fixes a bug where upon navigating to a different project new file changes were not shown (refreshed)
- Fixes a bug where the submodule setting ignore = all was not respected |
| 0.14.26 | 23 de maig del 2025 | 39,9 MB | 64 bits MSI 39,9 MB Notes de la versió## Changes specific to the v3 UI
- Partial commit failures now display a summary of the affected files
- Improved panel resizing heuristic
- Improved markdown rendering
- When creating a new branch the name is pre-filled with an auto generated one
- Fixes a bug where the branches panel on the right resizing unexpectedly
- Fixes a bug where gitignored files starting with $ are not respected
- Fixes a line selection bug while committing parts of diffs
- Fixes a flicker while navigating between repositories
- Fixes a bug with PR description generation
- Fixes a bug where readonly files/changes outside of the workspace were draggable
### Selection
- When a commit is selected, it's first file is also selected for preview
- After a new branch is created it becomes selected
- After a commit is 'uncommitted' the drawer/preview selection is cleared |
| 0.14.25 | 20 de maig del 2025 | 39,8 MB | 64 bits MSI 39,8 MB Notes de la versió## Fixes
- Fixes a bug that was preventing the use of Ollama local or self-hosted models
## Fixes specific to the experimental v3 UI
- Improved the performance of discarding large uncommitted changes
- Fixes a UI issue where with some window sizes, the applied branches panel was being clipped
- Fixes a UI bug where the branch header had a scrollbar
- UI now indicates that the workspace is up to date |
| 0.14.24 | 19 de maig del 2025 | 39,7 MB | 64 bits MSI 39,7 MB Notes de la versió## New features
- Adds a forge override setting. This is useful if you have a self-hosted Git(Hub|Lab) instance and GitButler does not automatically detect the remote type
- Adds a dismissible message on startup informing on the upcoming v3 UI
## Fixes
- Fixes a bug where in some rare cases renaming a branch fails
- Fixes an issue where for some branch names (containing slashes) Pull Request creation fails
- Fixes a bug where directories ending with an underscore are incorrectly rendered on screen
- Improved app performance when there are many new, untracked files
## Fixes specific to the experimental v3 UI
- Improved the behavior of the commit message editor when line wrapping is enabled
- Adds the ability to start a new branch lane via drag and drop of uncommitted changes
- The app now correctly connects branches to existing PRs (created outside the app)
- Fixes an issue where conflicted commits are not correctly indicated correctly in the UI
- Fixes a bug where completing conflict resolution did not update the UI
- Fixed an issue where creating a dependent branch from the context menu of an existing branch wasn't working
- Fixes an issue with stale commit messages appearing when starting a new commit |
| 0.14.23 | 13 de maig del 2025 | 36,6 MB | 64 bits MSI 36,6 MB Notes de la versió## Fixes
- Fixes an issue where an error popup is incorrectly shown when the app attempts auto-fetching but is offline
## Fixes specific to the experimental v3 UI
(These are changes for an upcoming app UI overhaul that can be enabled via "v3 Design" in the global settings under "experimental". If you do try it out, we would love to hear your feedback. Discord , Tweet, GitHub or email - whatever works best for you.)
- Fixes a bug in line selection when committing partial changes (hunk splitting)
- Fixes a bug where new stack creation sometimes attempts to automatically create invalid branch name
- Adds support for dragging changes out of a commit in order to uncommitted only those changes
- Fixes an issue where the commit context menu for uncommitted is incorrectly disabled
- Fixes a bug in listing target branch commits being off by one (missing the latest commit)
- Improved draggable elements design while being dragged
- Improved commit message editor: correct behavior of Enter and Tab
- Fixes a bug where the commit message editor would sometimes populate with stale input
## 0.14.23
- Fixes v3 scrolling issue |
| 0.14.22 | 13 de maig del 2025 | 36,6 MB | 64 bits MSI 36,6 MB Notes de la versió## Fixes
- Fixes an issue where an error popup is incorrectly shown when the app attempts auto-fetching but is offline
## Fixes specific to the experimental v3 UI
(These are changes for an upcoming app UI overhaul that can be enabled via "v3 Design" in the global settings under "experimental". If you do try it out, we would love to hear your feedback. Discord , Tweet, GitHub or email - whatever works best for you.)
- Fixes a bug in line selection when committing partial changes (hunk splitting)
- Fixes a bug where new stack creation sometimes attempts to automatically create invalid branch name
- Adds support for dragging changes out of a commit in order to uncommit only those changes
- Fixes an issue where the commit context menu for uncommitted is incorrectly disabled
- Fixes a bug in listing target branch commits being off by one (missing the latest commit)
- Improved draggable elements design while being dragged
- Improved commit message editor: correct behavior of Enter and Tab
- Fixes a bug where the commit message editor would sometimes populate with stale input |
| 0.14.21 | 12 de maig del 2025 | 36,5 MB | 64 bits MSI 36,5 MB Notes de la versió## New features
- V3 User Interface: You can try out the upcoming app UI overhaul by enabling "v3 Design" in the global settings under "experimental". If you do try it out, we would love to hear your feedback. Discord , Tweet, GitHub or email - whatever works best for you.
- It is now possible to move changes from one commit to another
- Going back to the GitButler Workspace from another branch now works even if there are uncommitted changes - they can be carried over or stashed
- Commit signing now reads the git config (and therefore it correctly uses the global, allowing per-project overrides)
- It is now possible to change the frequency of auto-fetching
- Improved committing / rebasing performance when commit signing is enabled
- Hover on commit now shows a tooltip with the full commit title
## Fixes
- Fixes a bug preventing the deletion of local branches
- Fixes a bug where in some cases operations fail with "Merge-commit can't be remerged"
- Fixes an issue where in some cases commit signing doesn't work due to env variable issues
- Fixes a bug where UI context menus could go outside of window boundaries
### Windows
- Fixes an issue with SSH commit signing
- Fixes an issue where in some rare cases, a malformed settings file prevents the app from starting up
### Forge integrations
- GitLab: Fixes a bug when creating stacked MRs (the head and base were swapped)
- Bitbucket: Fixes an incorrect PR URL when the branch name includes semver
- GitHub: Fixes a bug preventing creation of Pull Requests from a forked repo towards upstream
- GitHub: The "Merge Pull Request" button state now correctly reflects the user's permissions (i.e. it's disabled if the action is not possible) |
| 0.14.20 | 12 de maig del 2025 | 36,5 MB | 64 bits MSI 36,5 MB Notes de la versió## New features
- V3 User Interface: You can try out the upcoming app UI overhaul by enabling "v3 Design" in the global settings under "experimental". If you do try it out, we would love to hear your feedback. Discord , Tweet, GitHub or email - whatever works best for you.
- It is now possible to move changes from one commit to another
- Going back to the GitButler Workspace from another branch now works even if there are uncommitted changes - they can be carried over or stashed
- Commit signing now reads the git config (and therefore it correctly uses the global, allowing per-project overrides)
- It is now possible to change the frequency of auto-fetching
- Improved committing / rebasing performance when commit signing is enabled
- Hover on commit now shows a tooltip with the full commit title
## Fixes
- Fixes a bug preventing the deletion of local branches
- Fixes a bug where in some cases operations fail with "Merge-commit can't be remerged"
- Fixes an issue where in some cases commit signing doesn't work due to env variable issues
- Fixes a bug where UI context menus could go outside of window boundaries
### Windows
- Fixes an issue with SSH commit signing
- Fixes an issue where in some rare cases, a malformed settings file prevents the app from starting up
### Forge integrations
- GitLab: Fixes a bug when creating stacked MRs (the head and base were swapped)
- Bitbucket: Fixes an incorrect PR URL when the branch name includes semver
- GitHub: Fixes a bug preventing creation of Pull Requests from a forked repo towards upstream
- GitHub: The "Merge Pull Request" button state now correctly reflects the user's permissions (i.e. it's disabled if the action is not possible) |
| 0.14.19 | 28 d’abril del 2025 | 36,3 MB | 64 bits MSI 36,3 MB Notes de la versió## New features
- Adds an option to delete merged / integrated branches (locally) while updating the workspace
- Adds an option to disable checking for app updates - this is useful when using the app behind a firewall blocking these requests resulting in error popups
- Improved Pull Request description generation to respect any PR template provided
### Self-Hosted GitLab / Ollama / GitHub
- Adds support for configuring custom Custom Content Security Policy (CSP), allowing the use of self-hosted GitLab or Ollama instances (Docs: https://docs.gitbutler.com/troubleshooting/custom-csp)
## Fixes
- GitLab: fixes an issue where links are broken for stacked merge requests
- GitLab: Merge Requests are now created with the "remove source branch on merge" option enabled - required for stacking
- GitButler will no longer generate branches with UUID names upon unapplying of a stack
- Entering edit mode for a commit now has a loading state
- Fixes a bug in the "squash all" commits in the branch
- Fixes a bug with Pull/Merge Request creation where it automatically trimmed whitespaces |
| 0.14.18 | 14 d’abril del 2025 | 32,5 MB | 64 bits MSI 32,5 MB Notes de la versió## 0.14.18
- Fixes a bug where in some cases clicking on a file to preview does nothing
- Fixes a bug where PR creation text editor may not pick up the description from a commit when there a single one
## 0.14.17
- Adds an option to squash all commits in a branch together
- Fixes a bug in the PR creation text editor where the caret would randomly jump to the beginning
- Fixes a bug with the branch search not closing
- Fixes a bug with the GitLab integration - the app will now only fetch open MRs
- Fixes a bug where a very large number of files changing (eg. large builds) may cause the app to crash |
| 0.14.17 | 14 d’abril del 2025 | 32,4 MB | 64 bits MSI 32,4 MB Notes de la versió- Adds an option to squash all commits in a branch together
- Fixes a bug in the PR creation text editor where the caret would randomly jump to the beginning
- Fixes a bug with the branch search not closing
- Fixes a bug with the GitLab integration - the app will now only fetch open MRs
- Fixes a bug where a very large number of files changing (eg. large builds) may cause the app to crash |
| 0.14.16 | 8 d’abril del 2025 | 32,4 MB | 64 bits MSI 32,4 MB Notes de la versió- Fixes a CSP bug with the GitLab integration - it should work correctly now
- Pull Request creation has the message generation button back
- Fixes a bug where branch searching was broken
- Fixes a bug where if Git user.name is not configured the app fails
- An additional fix to Pull Request template loading
- Improved commit message generation |
| 0.14.15 | 7 d’abril del 2025 | 32,2 MB | 64 bits MSI 32,2 MB Notes de la versió# 0.14.15
- Fixes a regression where Pull Request templates are not loaded during creation
- Adds a loading state during Pull Request creation
# 0.14.14
## New features
- Adds a GitLab integration (docs: https://docs.gitbutler.com/features/gitlab-integration)
- Overhauled text editor for commit messages and PR/Review description introducing markdown and rich text
- Overhauled Pull Request / Review UI within branch lanes - this should address reactivity issues
- Adds syntax highlighting for additional languages: Docker, Jinja2, Lisp2, Lua, Bash/Zsh/Sh, Swift, Toml, YAML, Go
- GitButler is now fully migrated to using Git references (branches) to represent it's branches and internal state
## Fixes
- Fixes an entire class of of bugs with stacked branches - under some conditions when rewriting history the stacks were getting distorted due to failure to update references correctly
- Fixes an issue where commit signing is disabled upon failure even if it was globally configured
- Fixes an issue where in some cases Pull Request templates were not loaded
- Fixes an issue where in some cases copying from the app did not work
- Fixes a bug where if commit reordering or amending resulted in a merge conflict, the subsequent commit had incorrect contents |
| 0.14.14 | 7 d’abril del 2025 | 32,2 MB | 64 bits MSI 32,2 MB Notes de la versió## New features
- Adds a GitLab integration (docs: https://docs.gitbutler.com/features/gitlab-integration)
- Overhauled text editor for commit messages and PR/Review description introducing markdown and rich text
- Overhauled Pull Request / Review UI within branch lanes - this should address reactivity issues
- Adds syntax highlighting for additional languages: Docker, Jinja2, Lisp2, Lua, Bash/Zsh/Sh, Swift, Toml, YAML, Go
- GitButler is now fully migrated to using Git references (branches) to represent it's branches and internal state
## Fixes
- Fixes an entire class of of bugs with stacked branches - under some conditions when rewriting history the stacks were getting distorted due to failure to update references correctly
- Fixes an issue where commit signing is disabled upon failure even if it was globally configured
- Fixes an issue where in some cases Pull Request templates were not loaded
- Fixes an issue where in some cases copying from the app did not work
- Fixes a bug where if commit reordering or amending resulted in a merge conflict, the subsequent commit had incorrect contents |
| 0.14.13 | 19 de març del 2025 | 19,8 MB | 64 bits MSI 19,8 MB Notes de la versió- Fixes a regression where under some conditions "update workspace" can drop uncommitted changes (still recoverable via the operations history) |
| 0.14.12 | 17 de març del 2025 | 19,8 MB | 64 bits MSI 19,8 MB Notes de la versió- Fixes an issue preventing ssh pushing to some forges (e.g. gitea)
- Fixes a bug with amending of commits where when multiple files are dragged, only the first one is actually added to the commit
- Fixes a bug where in some conditions during workspace update the app could error with "No commit with change id found"
- Fixes an issue where in the branches/stacks overview the app incorrectly shows archived branches on hover |
| 0.14.11 | 14 de març del 2025 | 19,8 MB | 64 bits MSI 19,8 MB Notes de la versió- The "Create Pull Request" button has an updated label "Submit for Review", in order to support additional (non-GitHub) integrations moving forward
- The latest OpenAI models are now available within the app for commit message or branch name generation
- Fixes a bug where extremely long lines cause performance issues when previewing changes
- Fixes a Windows specific issue preventing GPG commit signing
- Fixes a bug where squashing a commit into an empty commit created an incorrect commit message update
- Fixes a bug where after the Workspace is update, the names of empty branches is reset to a default |
| 0.14.10 | 10 de març del 2025 | 19,8 MB | 64 bits MSI 19,8 MB Notes de la versióCorrects a few regressions introduced in 0.14.9:
- Fixes a bug where under certain conditions the app refuses to remove a branch
- Fixes a bug where the push button was visible even when unnecessary
- Fixes a bug with the navigation menu for switching projects/repos |
| 0.14.9 | 10 de març del 2025 | 19,8 MB | 64 bits MSI 19,8 MB Notes de la versióChanges:
- GitButler now creates regular Git references (branches) for the lanes and stacked branches in the app. This is part of an ongoing effort to make the app better interoperate with plain Git, with more improvements coming with the next release.
- GitButler web review (beta/preview) can now be enabled with a feature flag in the app settings
- Claude Sonnet 3.7 is now available within the app for commit message or branch name generation
Fixes:
- Fixes a bug with stacked branches where the "workspace update" appears to flatten the stack
- Fixes a bug with commit signing not working for some users
- Fixes a bug where the window menu option for toggling settings did not work
- Fixes an issue where merge commits are not correctly cherry-picked when rebasing
- Fixes a bug where the "copy" button did not work for some users due to permissions issues
- Fixes a bug where in some cases reordering a commit in the stack errors out with an incorrect validation error
- Fixes an issue with commit amending (drag & drop) where in some cases it didn't work as expected
- Fixes a bug with undoing a commit (within a stack) which in some conditions would fail to remove the selected commit |
| 0.14.8 | 21 de febrer del 2025 | 19,1 MB | 64 bits MSI 19,1 MB Notes de la versió- Small performance improvements while manipulating/rewriting commits
- Improved commit reordering / squashing performance
- Fixes a hardcoded context menu "Open in VSCode" when another editor has been configured as default |
| 0.14.7 | 4 de febrer del 2025 | 17,0 MB | 64 bits MSI 17,0 MB Notes de la versió- Fixes an issue using SSH for commit signing under Windows
- Fixes a bug where when a commit is moved to the same place where it already is produces an error
- Fixes an issue where the branch names part of a stack were not shown in the sidebar (instead displaying the stack UUID)
- Fixes a bug with exiting out of edit mode not persisting unresolved conflicts |
| 0.14.6 | 21 de gener del 2025 | 15,6 MB | 64 bits MSI 15,6 MB Notes de la versió- Fixes a regression from 0.14.5 which was preventing commit signing with 1Password under MacOS |
| 0.14.5 | 20 de gener del 2025 | 15,6 MB | 64 bits MSI 15,6 MB Notes de la versió- Improved secure keychain support in WSL2 environments
- Improved application performance
- Fixes a bug where the app refreshing it's state causes any in-progress Pull Request description input to be reset
- Adds an "error component" for when a page can not be rendered
- Fixes an edge case where under certain conditions, amending into a commit produced an "ownership not found" error
- Long project names are no longer truncated in the project switcher
- Commit message character counter now includes the number of characters in the message body as well
- Fixes a reactivity bug preventing the saving of Ollama custom prompts
- Updated the styles/look of tags to be more visually distinct from buttons
- Fixes a bug where branch/commit name generation with Ollama fails due to CSP
- Fixes a MacOS issue where the app window can't be closed while in full screen mode
- Fixes a Windows issue when using 1Password as an ssh agent
- Adds a button for collapsing lanes
- Fixes a bug with loading the user profile picture (if applicable)
- Fixes a bug where paths ending with double underscore were rendered incorrectly
- Fixes a bug with stacked branches where if there is a merged branch in the stack it was not possible to reorder commits in the active branches
- Fixes a bug affecting commit signing with GPG
- Overhauled commit squashing - it is now possible to squash a commit into any arbitrary other commit in the lane, as opposed to just it's parent
- Overhauled pre-commit hooks - these should now work as expected
- Fixes an annoying "Load failed" error when waking computer from sleep |
| 0.14.4 | 13 de desembre del 2024 | 15,1 MB | 64 bits MSI 15,1 MB |
| 0.14.3 | 8 de desembre del 2024 | 15,0 MB | 64 bits MSI 15,0 MB |
| 0.14.2 | 5 de desembre del 2024 | 15,0 MB | 64 bits MSI 15,0 MB |
| 0.14.1 | 2 de desembre del 2024 | 14,9 MB | 64 bits MSI 14,9 MB |
| 0.14.0 | 27 de novembre del 2024 | 14,9 MB | 64 bits MSI 14,9 MB |
| 0.13.17 | 22 de novembre del 2024 | 14,8 MB | 64 bits MSI 14,8 MB |
| 0.13.16 | 22 de novembre del 2024 | 14,8 MB | 64 bits MSI 14,8 MB |
| 0.13.15 | 15 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.14 | 13 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.13 | 8 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.12 | 6 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.11 | 6 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.10 | 5 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.9 | 5 de novembre del 2024 | 14,7 MB | 64 bits MSI 14,7 MB |
| 0.13.8 | 30 d’octubre del 2024 | 13,7 MB | 64 bits MSI 13,7 MB |
| 0.13.7 | 25 d’octubre del 2024 | 13,8 MB | 64 bits MSI 13,8 MB |
| 0.13.6 | 23 d’octubre del 2024 | 13,8 MB | 64 bits MSI 13,8 MB |
| 0.13.5 | 23 d’octubre del 2024 | 13,8 MB | 64 bits MSI 13,8 MB |
| 0.13.4 | 21 d’octubre del 2024 | 13,8 MB | 64 bits MSI 13,8 MB |
| 0.13.3 | 21 d’octubre del 2024 | 13,8 MB | 64 bits MSI 13,8 MB |
| 0.13.2 | 17 d’octubre del 2024 | 13,6 MB | 64 bits MSI 13,6 MB |
| 0.13.1 | 15 d’octubre del 2024 | 13,6 MB | 64 bits MSI 13,6 MB |
| 0.13.0 | 10 d’octubre del 2024 | 13,2 MB | 64 bits MSI 13,2 MB |
| 0.12.27 | 2 d’octubre del 2024 | 13,0 MB | 64 bits MSI 13,0 MB |
| 0.12.26 | 24 de setembre del 2024 | 13,1 MB | 64 bits MSI 13,1 MB |
| 0.12.25 | 12 de setembre del 2024 | 13,1 MB | 64 bits MSI 13,1 MB |
| 0.12.24 | 6 de setembre del 2024 | 13,5 MB | 64 bits MSI 13,5 MB |
| 0.12.23 | 7 de setembre del 2024 | 13,5 MB | 64 bits MSI 13,5 MB |
| 0.12.22 | 3 de setembre del 2024 | 13,4 MB | 64 bits MSI 13,4 MB |
| 0.12.21 | 27 d’agost del 2024 | 13,0 MB | 64 bits MSI 13,0 MB |
| 0.12.20 | 16 d’agost del 2024 | 12,2 MB | 64 bits MSI 12,2 MB |
| 0.12.19 | 12 d’agost del 2024 | 12,2 MB | 64 bits MSI 12,2 MB |
| 0.12.18 | 12 d’agost del 2024 | 12,2 MB | 64 bits MSI 12,2 MB |
| 0.12.17 | 8 d’agost del 2024 | 12,2 MB | 64 bits MSI 12,2 MB |
| 0.12.16 | 31 de juliol del 2024 | 12,1 MB | 64 bits MSI 12,1 MB |
| 0.12.15 | 25 de juliol del 2024 | 14,4 MB | 64 bits MSI 14,4 MB |
| 0.12.14 | 22 de juliol del 2024 | 14,4 MB | 64 bits MSI 14,4 MB |
| 0.12.13 | 22 de juliol del 2024 | 14,3 MB | 64 bits MSI 14,3 MB |
| 0.12.12 | 17 de juliol del 2024 | 14,3 MB | 64 bits MSI 14,3 MB |
| 0.12.11 | 15 de juliol del 2024 | 14,3 MB | 64 bits MSI 14,3 MB |
| 0.12.10 | 15 de juliol del 2024 | 14,3 MB | 64 bits MSI 14,3 MB |
| 0.12.9 | 11 de juliol del 2024 | 14,4 MB | 64 bits MSI 14,4 MB |
| 0.12.8 | 10 de juliol del 2024 | 14,4 MB | 64 bits MSI 14,4 MB |
| 0.12.7 | 28 de juny del 2024 | 16,7 MB | 64 bits MSI 16,7 MB |
| 0.12.6 | 25 de juny del 2024 | 16,7 MB | 64 bits MSI 16,7 MB |
| 0.12.5 | 17 de juny del 2024 | 17,0 MB | 64 bits MSI 17,0 MB |
| 0.12.4 | 12 de juny del 2024 | 17,0 MB | 64 bits MSI 17,0 MB |
| 0.12.3 | 10 de juny del 2024 | 17,0 MB | 64 bits MSI 17,0 MB |
| 0.12.2 | 7 de juny del 2024 | 17,0 MB | 64 bits MSI 17,0 MB |
| 0.12.1 | 4 de juny del 2024 | 16,8 MB | 64 bits MSI 16,8 MB |
| 0.12.0 | 3 de juny del 2024 | 16,8 MB | 64 bits MSI 16,8 MB |
| 0.11.7 | 7 de maig del 2024 | 17,4 MB | 64 bits MSI 17,4 MB |
| 0.11.6 | 3 de maig del 2024 | 17,4 MB | 64 bits MSI 17,4 MB |
| 0.11.5 | 30 d’abril del 2024 | 17,5 MB | 64 bits MSI 17,5 MB |
| 0.11.4 | 24 d’abril del 2024 | 17,4 MB | 64 bits MSI 17,4 MB |
| 0.11.3 | 19 d’abril del 2024 | 17,1 MB | 64 bits MSI 17,1 MB |
| 0.11.2 | 18 d’abril del 2024 | 17,1 MB | 64 bits MSI 17,1 MB |
| 0.11.1 | 11 d’abril del 2024 | 17,1 MB | 64 bits MSI 17,1 MB |