<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj" -->

---
title: GitButler 0.23 - "Air Jordan" | daily.dev
description: GitButler 0.23, nicknamed 'Air Jordan', removes the gitbutler/workspace integration commit when you only have a single branch. It adds worktree support,...
canonical: https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: GitButler 0.23 - "Air Jordan" | daily.dev
og:description: GitButler 0.23, nicknamed 'Air Jordan', removes the gitbutler/workspace integration commit when you only have a single branch. It adds worktree support,...
og:url: https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj
og:image: https://api.daily.dev/og/posts/nDIEq4UkJ.png
og:image:alt: GitButler 0.23 - "Air Jordan"
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# GitButler 0.23 - "Air Jordan"

**[GitButler Blog](https://daily.dev/sources/gitbutler)** · 5 min read · 2 upvotes · 0 comments

## Summary

GitButler 0.23, nicknamed 'Air Jordan', removes the gitbutler/workspace integration commit when you only have a single branch. It adds worktree support, letting you run parallel, stacked, or isolated worktree branches and move work between them with 'but move'. The CLI gains 'but init', 'but split', stable hunk IDs in 'but diff', and local target branches so 'but pull' and 'but merge' work without a remote. The TUI now supports worktrees and hunk-level editing, gix is upgraded to 0.90 for a roughly 35% faster object database, and an early experimental GPUI-based native desktop client is available under settings.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.gitbutler.com/gitbutler-0-23>

## Questions this post answers

### How do I use worktrees with GitButler to isolate branches for testing?

GitButler 0.23 adds native worktree support, letting you run parallel branches in your main workspace or isolate branches in separate worktree directories, including stacked worktree branches for best-of-N testing. Work, commits, or whole branches move between worktrees and the main workspace with the 'but move' command, and a '.worktreeinclude' file copies ignored files or directories into new worktrees, using copy-on-write cloning when the filesystem supports it.

_Teams adopting worktree-based workflows can follow GitButler's release notes on daily.dev as the tooling evolves._

### Does GitButler still require a gitbutler/workspace integration commit on my branch?

No, as of GitButler 0.23 the gitbutler/workspace integration commit is only added when you have more than one parallel branch. If you're on a single branch, GitButler no longer switches you into that branch or adds the merge commit, and you no longer need to run 'but setup' to start using it.

_Developers evaluating Git workflow tools can track changes like this via daily.dev before switching setups._

### Can I use GitButler's but pull and but merge commands in a repository without a remote?

Yes, GitButler 0.23 lets projects use a local target branch, so 'but pull' and 'but merge' work in repositories with no remote configured. The target branch can be a local branch like 'main' instead of requiring 'origin/main', and 'but pull' automatically moves a checked-out target branch along with it.

_Developers setting up new repos can keep tabs on CLI changes like this through daily.dev before upgrading._

## Similar posts on daily.dev

- [GitButler 0.22 - "Catch 22"](https://daily.dev/posts/gitbutler-0-22---catch-22--hlxv8uu5e) · GitButler Blog · 7 upvotes · 0 comments
- [Worktrunk — Git Worktree Manager for AI Agent Workflows](https://daily.dev/posts/worktrunk-git-worktree-manager-for-ai-agent-workflows-edzkcvip6) · Reid Burke · 28 upvotes · 1 comments
- [We’ve raised $17M to build what comes after Git](https://daily.dev/posts/we-ve-raised-17m-to-build-what-comes-after-git-j7ohjbthr) · Hacker News · 0 upvotes · 0 comments
- [Stop Stashing. Start Shipping. Meet Git Worktree Manager.](https://daily.dev/posts/stop-stashing-start-shipping-meet-git-worktree-manager--z26ackrni) · Medium · 1 upvotes · 0 comments

---

Tags: [#rust](https://daily.dev/tags/rust), [#git](https://daily.dev/tags/git), [#cli](https://daily.dev/tags/cli), [#version-control](https://daily.dev/tags/version-control)

[View this post on daily.dev](https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"GitButler 0.23 - \"Air Jordan\"","url":"https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj"},"datePublished":"2026-10-29T08:55:16.330Z","dateModified":"2026-10-29T08:55:44.926Z","description":"GitButler 0.23, nicknamed 'Air Jordan', removes the gitbutler/workspace integration commit when you only have a single branch. It adds worktree support,...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/e738f050ac78f07a4b410d1a729fe80a?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/e738f050ac78f07a4b410d1a729fe80a?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"GitButler Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"GitButler Blog","logo":"https://media.daily.dev/image/upload/s--LrHsyt2T--/f_auto/v1692632054/squad_placeholder_sfwkmj","url":"https://daily.dev/sources/gitbutler"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"rust,git,cli,version-control","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"GitButler Blog","item":"https://daily.dev/sources/gitbutler"},{"@type":"ListItem","position":3,"name":"GitButler 0.23 - \"Air Jordan\""}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/gitbutler-0-23---air-jordan--ndieq4ukj#faq","mainEntity":[{"@type":"Question","name":"How do I use worktrees with GitButler to isolate branches for testing?","acceptedAnswer":{"@type":"Answer","text":"GitButler 0.23 adds native worktree support, letting you run parallel branches in your main workspace or isolate branches in separate worktree directories, including stacked worktree branches for best-of-N testing. Work, commits, or whole branches move between worktrees and the main workspace with the 'but move' command, and a '.worktreeinclude' file copies ignored files or directories into new worktrees, using copy-on-write cloning when the filesystem supports it. Teams adopting worktree-based workflows can follow GitButler's release notes on daily.dev as the tooling evolves."}},{"@type":"Question","name":"Does GitButler still require a gitbutler/workspace integration commit on my branch?","acceptedAnswer":{"@type":"Answer","text":"No, as of GitButler 0.23 the gitbutler/workspace integration commit is only added when you have more than one parallel branch. If you're on a single branch, GitButler no longer switches you into that branch or adds the merge commit, and you no longer need to run 'but setup' to start using it. Developers evaluating Git workflow tools can track changes like this via daily.dev before switching setups."}},{"@type":"Question","name":"Can I use GitButler's but pull and but merge commands in a repository without a remote?","acceptedAnswer":{"@type":"Answer","text":"Yes, GitButler 0.23 lets projects use a local target branch, so 'but pull' and 'but merge' work in repositories with no remote configured. The target branch can be a local branch like 'main' instead of requiring 'origin/main', and 'but pull' automatically moves a checked-out target branch along with it. Developers setting up new repos can keep tabs on CLI changes like this through daily.dev before upgrading."}}]}
```

