gitui

Developer ToolsDesktop

A blazing-fast terminal UI for git, written in Rust.

Latest v0.28.1 · · Desktopby gitui projectWebsitegitui-org/gitui

Release activity

Release activity — 4 releases across 3 days in the last year. Each cell is one day; darker means more releases that day. Older weeks are hidden at this screen width.
MayJunJulAug
SundayNo releases on May 3, 2026No releases on May 10, 2026No releases on May 17, 2026No releases on May 24, 2026No releases on May 31, 2026No releases on Jun 7, 2026No releases on Jun 14, 2026No releases on Jun 21, 2026No releases on Jun 28, 2026No releases on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026No releases on Aug 9, 2026No releases on Aug 16, 2026
MondayNo releases on May 4, 2026No releases on May 11, 2026No releases on May 18, 2026No releases on May 25, 2026No releases on Jun 1, 2026No releases on Jun 8, 2026No releases on Jun 15, 2026No releases on Jun 22, 2026No releases on Jun 29, 2026No releases on Jul 6, 2026No releases on Jul 13, 2026No releases on Jul 20, 2026No releases on Jul 27, 2026No releases on Aug 3, 2026No releases on Aug 10, 2026
TuesdayNo releases on May 5, 2026No releases on May 12, 2026No releases on May 19, 2026No releases on May 26, 2026No releases on Jun 2, 2026No releases on Jun 9, 2026No releases on Jun 16, 2026No releases on Jun 23, 2026No releases on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026No releases on Aug 11, 2026
WednesdayNo releases on May 6, 2026No releases on May 13, 2026No releases on May 20, 2026No releases on May 27, 2026No releases on Jun 3, 2026No releases on Jun 10, 2026No releases on Jun 17, 2026No releases on Jun 24, 2026No releases on Jul 1, 2026No releases on Jul 8, 2026No releases on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026No releases on Aug 12, 2026
ThursdayNo releases on May 7, 2026No releases on May 14, 2026No releases on May 21, 2026No releases on May 28, 2026No releases on Jun 4, 2026No releases on Jun 11, 2026No releases on Jun 18, 2026No releases on Jun 25, 2026No releases on Jul 2, 2026No releases on Jul 9, 2026No releases on Jul 16, 2026No releases on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 2026No releases on Aug 13, 2026
FridayNo releases on May 8, 2026No releases on May 15, 2026No releases on May 22, 2026No releases on May 29, 2026No releases on Jun 5, 2026No releases on Jun 12, 2026No releases on Jun 19, 2026No releases on Jun 26, 2026No releases on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026No releases on Aug 7, 2026No releases on Aug 14, 2026
SaturdayNo releases on May 9, 2026No releases on May 16, 2026No releases on May 23, 2026No releases on May 30, 2026No releases on Jun 6, 2026No releases on Jun 13, 2026No releases on Jun 20, 2026No releases on Jun 27, 2026No releases on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026No releases on Aug 8, 2026No releases on Aug 15, 2026

4 releases in the last year, busiest day 2

Changelog

v0.28.1

Latest
Changed 3
  • support proper pre-push hook
  • improve gitui --version message
  • rust msrv bumped to 1.88
Fixed 2
  • fix extremely slow status loading in large repositories by replacing time-based cache invalidation with generation counter
  • fix panic when renaming or updating remote URL with no remotes configured
Changed
  • support proper pre-push hook (#2809)
  • improve gitui --version message [@hlsxx] (#2838)
  • rust msrv bumped to 1.88
Fixed
  • fix extremely slow status loading in large repositories by replacing time-based cache invalidation with generation counter [@DannyStoll1] (#2823)
  • fix panic when renaming or updating remote URL with no remotes configured [@xvchris] (#2868)
View originalPermalink
How v0.28.1 went

v0.28.1-rc.1

Pre-release
Changed 3
  • support proper pre-push hook
  • improve gitui --version message
  • rust msrv bumped to 1.88
Fixed 2
  • fix extremely slow status loading in large repositories by replacing time-based cache invalidation with generation counter
  • fix panic when renaming or updating remote URL with no remotes configured
Changed
  • support proper pre-push hook (#2809)
  • improve gitui --version message [@hlsxx] (#2838)
  • rust msrv bumped to 1.88
Fixed
  • fix extremely slow status loading in large repositories by replacing time-based cache invalidation with generation counter [@DannyStoll1] (#2823)
  • fix panic when renaming or updating remote URL with no remotes configured [@xvchris] (#2868)
View originalPermalink
How v0.28.1-rc.1 went

v0.28.0

Added 11
  • Support choosing checkout branch method when status is not empty
  • Support pre-push hook
  • Message tab supports pageUp and pageDown
  • Files and status tab support pageUp and pageDown
  • Support loading custom syntax highlighting themes from a file
  • Select syntax highlighting theme out of the defaults from syntect
Changed 11
  • Execute git-hooks directly if possible (on *nix) else use sh instead of bash
  • Improve error messages
  • Improve syntax highlighting file detection
  • After commit: jump back to unstaged area
  • The default key to close the commit error message popup is now the Escape key
  • Use OSC52 copying in case other methods fail
Fixed 6
  • Resolve core.hooksPath relative to GIT_WORK_TREE
  • Yanking commit ranges no longer generates incorrect dotted range notations, but lists each individual commit
  • Print slightly nicer errors when failing to create a directory
  • When the terminal is insufficient to display all the commands, the cmdbar_bg configuration color does not fully take effect
  • Disable blame and history popup keybinds for untracked files
  • Overwrites committer on amend of unsigned commits

discard changes on checkout discard-changes-on-checkout

go to line in blame blame-goto-line

Added
  • support choosing checkout branch method when status is not empty [@fatpandac] (#2404)
  • support pre-push hook [@xlai89] (#1933)
  • message tab supports pageUp and pageDown [@xlai89] (#2623)
  • files and status tab support pageUp and pageDown [@fatpandac] (#1951)
  • support loading custom syntax highlighting themes from a file [@acuteenvy] (#2565)
  • select syntax highlighting theme out of the defaults from syntect [@vasilismanol] (#1931)
  • new command-line option to override the default log file path (--logfile) [@acuteenvy] (#2539)
  • dx: make check checks Cargo.toml dependency ordering using cargo sort [@naseschwarz]
  • add use_selection_fg to theme file to allow customizing selection foreground color [@Upsylonbare] (#2515)
  • add "go to line" command for the blame view [@andrea-berling] (#2262)
  • add --file cli flag to open the files tab with the given file already selected [@laktak] (#2510)
  • add the ability to specify a custom keybinding/symbols file via the cli [@0x61nas] (#2731)
Changed
Fixes
  • resolve core.hooksPath relative to GIT_WORK_TREE [@naseschwarz] (#2571)
  • yanking commit ranges no longer generates incorrect dotted range notations, but lists each individual commit [@naseschwarz] (#2576)
  • print slightly nicer errors when failing to create a directory [@linkmauve] (#2728)
  • when the terminal is insufficient to display all the commands, the cmdbar_bg configuration color does not fully take effect. (#2347)
  • disable blame and history popup keybinds for untracked files [@kpbaks] (#2489)
  • overwrites committer on amend of unsigned commits [@cruessler] (#2784)
  • Updated project links to point to gitui-org instead of extrawurst [@vasleymus] (#2538)
View originalPermalink
How v0.28.0 went

v0.28.0-rc.2

Pre-release
Added 11
  • Support choosing checkout branch method when status is not empty
  • Support pre-push hook
  • Message tab supports pageUp and pageDown
  • Files and status tab support pageUp and pageDown
  • Support loading custom syntax highlighting themes from a file
  • Select syntax highlighting theme out of the defaults from syntect
Changed 11
  • Execute git-hooks directly if possible (on *nix) else use sh instead of bash
  • Improve error messages
  • Improve syntax highlighting file detection
  • After commit: jump back to unstaged area
  • The default key to close the commit error message popup is now the Escape key
  • Use OSC52 copying in case other methods fail
Fixed 6
  • Resolve core.hooksPath relative to GIT_WORK_TREE
  • Yanking commit ranges no longer generates incorrect dotted range notations, but lists each individual commit
  • Print slightly nicer errors when failing to create a directory
  • When the terminal is insufficient to display all the commands, the cmdbar_bg configuration color does not fully take effect
  • Disable blame and history popup keybinds for untracked files
  • Overwrites committer on amend of unsigned commits

discard changes on checkout discard-changes-on-checkout

go to line in blame blame-goto-line

Added
  • support choosing checkout branch method when status is not empty [@fatpandac] (#2404)
  • support pre-push hook [@xlai89] (#1933)
  • message tab supports pageUp and pageDown [@xlai89] (#2623)
  • files and status tab support pageUp and pageDown [@fatpandac] (#1951)
  • support loading custom syntax highlighting themes from a file [@acuteenvy] (#2565)
  • select syntax highlighting theme out of the defaults from syntect [@vasilismanol] (#1931)
  • new command-line option to override the default log file path (--logfile) [@acuteenvy] (#2539)
  • dx: make check checks Cargo.toml dependency ordering using cargo sort [@naseschwarz]
  • add use_selection_fg to theme file to allow customizing selection foreground color [@Upsylonbare] (#2515)
  • add "go to line" command for the blame view [@andrea-berling] (#2262)
  • add --file cli flag to open the files tab with the given file already selected [@laktak] (#2510)
  • add the ability to specify a custom keybinding/symbols file via the cli [@0x61nas] (#2731)
Changed
Fixes
  • resolve core.hooksPath relative to GIT_WORK_TREE [@naseschwarz] (#2571)
  • yanking commit ranges no longer generates incorrect dotted range notations, but lists each individual commit [@naseschwarz] (#2576)
  • print slightly nicer errors when failing to create a directory [@linkmauve] (#2728)
  • when the terminal is insufficient to display all the commands, the cmdbar_bg configuration color does not fully take effect. (#2347)
  • disable blame and history popup keybinds for untracked files [@kpbaks] (#2489)
  • overwrites committer on amend of unsigned commits [@cruessler] (#2784)
  • Updated project links to point to gitui-org instead of extrawurst [@vasleymus] (#2538)
View originalPermalink
How v0.28.0-rc.2 went

v0.27.0

Added 3
  • Add popups for viewing, adding, updating and removing remotes
  • Support for Copy Path action in WSL
  • Help popup scrollbar
Changed 1
  • Use default shell instead of bash on Unix-like OS
Fixed 2
  • Respect env vars like GIT_CONFIG_GLOBAL
  • Set CREATE_NO_WINDOW flag when executing Git hooks on Windows

new: manage remotes

add-remote

Breaking Changes
  • use default shell instead of bash on Unix-like OS [@yerke] (#2343)
Added
Fixes
  • respect env vars like GIT_CONFIG_GLOBAL (#2298)
  • Set CREATE_NO_WINDOW flag when executing Git hooks on Windows (#2371)
View originalPermalink
How v0.27.0 went

v0.27.0-rc.1

Pre-release
Added 3
  • Add popups for viewing, adding, updating and removing remotes
  • Support for Copy Path action in WSL
  • Help popup scrollbar
Changed 1
  • Use default shell instead of bash on Unix-like OS
Fixed 2
  • Respect env vars like GIT_CONFIG_GLOBAL
  • Set CREATE_NO_WINDOW flag when executing Git hooks on Windows

new: manage remotes

add-remote

Breaking Changes
  • use default shell instead of bash on Unix-like OS [@yerke] (#2343)
Added
Fixes
  • respect env vars like GIT_CONFIG_GLOBAL (#2298)
  • Set CREATE_NO_WINDOW flag when executing Git hooks on Windows (#2371)
View originalPermalink
How v0.27.0-rc.1 went

v0.26.3

Added 2
  • Added support for intel x86 apple build in nightlies and releases as separate artifact
  • Added support for BUILD_GIT_COMMIT_ID environment variable to enable builds from git archive generated source tarballs or outside a git repository
Changed 1
  • Theme file format for color definitions changed from Some(White) to Some("White") and now supports hex format like Some("#00ff00")
Fixed 1
  • Updated yanked dependency to libc to fix building with --locked
Breaking Changes
Theme file format

note: this actually applied to the previous release already: 0.26.2

Ratatui (upstream terminal rendering crate) changed its serialization format for Colors. So the theme files have to be adjusted.

selection_fg: Some(White) -> selection_fg: Some("White")

but this also allows us now to define colors in the common hex format:

selection_fg: Some(Rgb(0,255,0)) -> selection_fg: Some("#00ff00")

Checkout THEMES.md for more info.

Added
  • due to github runner changes, the regular mac build is now arm64, so we added support for intel x86 apple build in nightlies and releases (via separat artifact)
  • support BUILD_GIT_COMMIT_ID enabling builds from git archive generated source tarballs or other outside a git repo [@alerque] (#2187)
Fixes
  • update yanked dependency to libc to fix building with --locked.
  • document breaking change in theme file format.
Support

github

View originalPermalink
How v0.26.3 went

v0.26.3-rc.1

Pre-release
Added 2
  • Support intel x86 apple build in nightlies and releases
  • Support BUILD_GIT_COMMIT_ID enabling builds from git archive generated source tarballs or other outside a git repo
Changed 1
  • Theme file format now requires quoted color names and supports hex color format (selection_fg: Some("White") and selection_fg: Some("#00ff00"))
Fixed 1
  • Update yanked dependency to libc to fix building with --locked
Breaking Changes
Theme file format

note: this actually applied to the previous release already: 0.26.2

Ratatui (upstream terminal rendering crate) changed its serialization format for Colors. So the theme files have to be adjusted.

selection_fg: Some(White) -> selection_fg: Some("White")

but this also allows us now to define colors in the common hex format:

selection_fg: Some(Rgb(0,255,0)) -> selection_fg: Some("#00ff00")

Checkout THEMES.md for more info.

Added
  • support intel x86 apple build in nightlies and releases
  • support BUILD_GIT_COMMIT_ID enabling builds from git archive generated source tarballs or other outside a git repo [@alerque] (#2187)
Fixes
  • update yanked dependency to libc to fix building with --locked.
  • document breaking change in theme file format.
View originalPermalink
How v0.26.3-rc.1 went

v0.26.2

Added 1
  • Support overriding build_date for reproducible builds
Fixed 3
  • Fix cargo install without --locked
  • Respect configuration for remote when fetching and pulling
  • Add : character to sign-off trailer to comply with Conventional Commits standard
Fixes
  • fix cargo install without --locked (#2098)
  • respect configuration for remote when fetching (also applies to pulling) [@cruessler] (#1093)
  • add : character to sign-off trailer to comply with Conventinoal Commits standard @semioticrobotic (#2196)
Added
Support

github

View originalPermalink
How v0.26.2 went
View all

Discussion

If you publish gitui, you can claim this product by proving you administer its repository.