Gitui Changelog

What's new in Gitui 0.26.1

Apr 15, 2024
  • Added:
  • sign commits using openpgp [@hendrikmaus] (#97)
  • support ssh commit signing (when user.signingKey and gpg.format = ssh of gitconfig are set; ssh-agent isn't yet supported) [@yanganto] (#1149)
  • provide nightly builds (see NIGHTLIES.md) (#2083)
  • more version info in gitui -V and help popup (including git hash)
  • support core.commitChar filtering [@concelare] (#2136)
  • allow reset in branch popup (#2170)
  • respect configuration for remote when pushing [@cruessler] (#2156)
  • Changed:
  • Make info and error message popups scrollable [@MichaelAug] (#1138)
  • clarify x86_64 linux binary in artifact names: gitui-linux-x86_64.tar.gz (formerly known as musl) (#2148)
  • Fixes:
  • add syntax highlighting support for more file types, e.g. Typescript, TOML, etc. [@martihomssoler] (#2005)
  • windows release deployment was broken (reason for release 0.26.1) 218d739

New in Gitui 0.25.2 (Mar 23, 2024)

  • Fixes:
  • Blame sometimes crashed due to new syntax highlighting [@tdtrung17693] (#2130)
  • Going to file tree view at certin commit from the commit-details view broke [@martihomssoler] (#2114)
  • 0.25 broke creating annotated tags (#2126)
  • Changed:
  • Re-enable clippy missing_const_for_fn linter warning and added const to functions where applicable (#2116)

New in Gitui 0.25.1 (Feb 23, 2024)

  • Fixes:
  • Bump yanked dependency bumpalo to fix build from source (#2087)
  • Pin ratatui version to fix building without locked cargo install gitui (#2090)

New in Gitui 0.25.0 (Feb 21, 2024)

  • Multiline text editor

New in Gitui 0.24.3 (Sep 9, 2023)

  • Fixes to 0.24.2:
  • log: fix major lag when going beyond last search hit (#1876)
  • parallelise log search - performance gain ~100% (#1869)
  • search message body/summary separately (#1875)

New in Gitui 0.24.2 (Sep 3, 2023)

  • Fixes to 0.24.1
  • Fix commit log not updating after branch switch (#1862)
  • Fix stashlist not updating after pop/drop (#1864)
  • Fix commit log corruption when tabbing in/out while parsing log (#1866)
  • Fixes to 0.24
  • Fix performance problem in big repo with a lot of incoming commits (#1845)
  • Fix error switching to a branch with '/' in the name (#1851)

New in Gitui 0.24.1 (Aug 30, 2023)

  • Fixes:
  • fix performance problem in big repo with a lot of incoming commits (#1845)
  • fix error switching to a branch with '/' in the name (#1851)

New in Gitui 0.24.0 (Aug 27, 2023)

  • Breaking Changes:
  • Do you use a custom theme?
  • The way themes work got changed and simplified (see docs for more info):
  • The format of theme.ron has changed: you only specify the colors etc. that should differ from their default value
  • Future additions of colors etc. will not break existing themes anymore
  • Added:
  • Search commits by message, author or files in diff
  • Support 'n'/'p' key to move to the next/prev hunk in diff component
  • Simplify theme overrides
  • Support for sign-off of commits
  • Switched from textwrap to bwrap for text wrapping
  • More logging diagnostics when a repo cannot be opened
  • Added to anaconda
  • Visualize empty line substituted with content in diff better
  • Checkout branch works with non-empty status report
  • Jump to commit by SHA
  • Fixes:
  • Fix commit dialog char count for multibyte characters
  • Fix wrong hit highlighting in fuzzy find popup
  • Fix symlink support for configuration files
  • Fix expansion of ~ in commit.template
  • Fix hunk (un)staging/reset for # of context lines != 3
  • Fix delay when opening external editor
  • Changed:
  • Copy full Commit Hash by default

New in Gitui 0.23.0 (Jun 19, 2023)

  • Breaking Change:
  • Focus_XYZ key bindings are merged into the move_XYZ set, so only one way to bind arrow-like keys from now on
  • Added:
  • Allow reset (soft,mixed,hard) from commit log
  • Support reword of commit from log
  • Fuzzy find branch
  • List changes in commit message inside external editor
  • Allow detaching HEAD and checking out specific commit from log view
  • Add no-verify option on commits to not run hooks
  • Allow fetch on status tab
  • Allow copy file path on revision files and status tree
  • Print message of where log will be written if -l is set
  • Show remote branches in log
  • Fixes:
  • Fixed side effect of crossterm 0.26 on windows that caused double input of all keys
  • Commit msg history ordered the wrong way
  • Improve help documentation for amend cmd
  • Lag issue when showing files tab
  • Fix key binding shown in bottom bar for stash_open
  • --bugreport does not require param
  • Edit-file command shown on commits msg
  • Crash on branches popup in small terminal
  • Edit command duplication
  • Syntax errors in key_bindings.ron will be logged
  • Commit hooks report "command not found" on Windows with wsl2 installed
  • Crashes on entering submodules
  • Fix race issue: revlog messages sometimes appear empty
  • Default to tick-based updates
  • Add support for options handling in log and stashes views
  • Changed:
  • Minimum supported rust version bumped to 1.65 (thank you time crate)

New in Gitui 0.22.1 (Nov 22, 2022)

  • Added:
  • New arg --polling to use poll-based change detection and not filesystem watcher (use if you see problems running into file descriptor limits)
  • Fixes:
  • Improve performance by requesting branches info asynchronous (92f63d1)
  • Fix app startup delay due to using file watcher (#1436)
  • Make git tree file fetch async (#734)

New in Gitui 0.22.0 (Nov 20, 2022)

  • Added:
  • submodules support (#1087)
  • remember tab between app starts (#1338)
  • repo specific gitui options saved in .git/gitui.ron (#1340)
  • commit msg history (#1345)
  • customizable cmdbar_bg theme color & screen spanning selected line bg [@gigitsu] (#1299)
  • word motions to text input [@Rodrigodd] (#1256)
  • file blame at right revision from commit-details [@heiskane] (#1122)
  • dedicated selection foreground theme color selection_fg (#1365)
  • add regex-fancy and regex-onig features to allow building Syntect with Onigumara regex engine instead of the default engine based on fancy-regex [@jirutka]
  • add vendor-openssl feature to allow building without vendored openssl [@jirutka]
  • allow copying marked commits [@remique] (#1288)
  • feedback for success/failure of copying hash commit [@sergioribera](#1160)
  • display tags and branches in the log view [@alexmaco] (#1371)
  • display current repository path in the top-right corner [@alexmaco](#1387)
  • add Linux targets for ARM, ARMv7 and AARCH64 [@adur1990] (#1419)
  • display commit description in file view [@alexmaco] (#1380)
  • allow launching editor from Compare Commits view (#1409)
  • Fixes:
  • remove insecure dependency ansi_term (#1290)
  • use filewatcher instead of polling updates (#1)

New in Gitui 0.21.0 (Aug 18, 2022)

  • Added:
  • Stack popups (#846)
  • File history log [@cruessler] (#381)
  • Termux support on andriod [@PeroSar] (#1139)
  • Use GIT_DIR and GIT_WORK_DIR from environment if set (#1191)
  • New FAQs page
  • Mention macports in install section [@fs111](#1237)
  • Support copy to clipboard on wayland [@JayceFayne] (#397)
  • Fixed:
  • Opening tags list without remotes (#1111)
  • Tabs indentation in blame [@fersilva16] (#1117)
  • Switch focus to index after staging last file (#1169)
  • Fix stashlist multi marking not updated after dropping (#1207)
  • Exact matches have a higher priority and are placed to the top of the list when fuzzily finding files (#1183)
  • Changed:
  • Minimum supported rust version bumped to 1.60 (#1279)

New in Gitui 0.20.1 (Jan 26, 2022)

  • Added:
  • Support proxy auto detection via env's like HTTP_PROXY.
  • Fixed:
  • Severe performance regression in 0.20.
  • Several smaller performance improvements via caching.
  • Windows release deployment via CD broken.

New in Gitui 0.19.0 (Dec 9, 2021)

  • Breaking Change:
  • You only define the keys that should differ from the default.
  • The file is renamed to key_bindings.ron
  • Future addition of new keys will not break anymore
  • Added:
  • add fetch/update command all remote branches
  • add trace-libgit feature to make git tracing optional [@dm9pZCAq]
  • support merging and rebasing remote branches [@R0nd]
  • add highlighting matches in fuzzy finder [@Mifom]
  • support home and end keys in branchlist
  • add ghemoji feature to make gh-emoji (GitHub emoji) optional
  • allow customizing key symbols like ⏎ & ⇧ (see docs)
  • simplify key overrides (see docs)
  • dedicated fuzzy finder up/down keys to allow vim overrides
  • pull will also download tags (#1013)
  • allow editing file from filetree
  • support bare repos (new workdir argument)
  • Fixed:
  • honor options (for untracked files) in stage_all command
  • improved file diff speed dramatically
  • blaming files in sub-folders on windows
  • push failing due to tracing error in upstream

New in Gitui 0.18.0 (Oct 11, 2021)

  • Added:
  • Support rebasing branches with conflicts (#895)
  • Add a key binding to stage / unstage items [@alessandroasm] (#909)
  • Switch to status tab after merging or rebasing with conflicts (#926)
  • Fixed:
  • Fix supported checkout of hierarchical branchnames (#921)
  • Appropriate error message when pulling deleted remote branch (#911)
  • Improved color contrast in branches popup for light themes [@Cottser] (#922)
  • Use git_message_prettify for commit messages (#917)

New in Gitui 0.17.1 (Sep 10, 2021)

  • Added:
  • add supporting rebasing on branch (if conflict-free) (#816)
  • fuzzy find files (#891)
  • visualize progress during async syntax highlighting (#889)
  • added support for markdown emoji's in commits [@andrewpollack] (#768)
  • added scrollbar to revlog [@ashvin021] (#868)
  • Fixed:
  • fix build when system level libgit2 version was used (#883)
  • fix merging branch not closing branch window [@andrewpollack] (#876)
  • fix commit msg being broken inside tag list (#871)
  • fix filetree file content not showing tabs correctly (#874)
  • Key binding notes:
  • new keys: rebase_branch [R], file_find [f]

New in Gitui 0.17 (Aug 22, 2021)

  • Added:
  • Allow inspecting top commit of a branch from list
  • Compare commits in revlog and head against branch (#852)
  • New options popup (show untracked files, diff settings) (#849)
  • Mark and drop multiple stashes (#854)
  • Check branch name validity while typing (#559)
  • Support deleting remote branch [@zcorniere] (#622)
  • Mark remote branches that have local tracking branch [@jedel1043] (#861)
  • Fixed:
  • Error viewing filetree in empty repo (#859)
  • Do not allow to ignore .gitignore files (#825)
  • Crash in shallow repo (#836)
  • Fixed performance regression in revlog (#850)
  • Fixed performance degradation when quitting on Windows (#823)

New in Gitui 0.16.2 (Jul 10, 2021)

  • Added:
  • Taglist: show arrow-symbol on tags not present on origin [@cruessler] (#776)
  • New undo-last-commit command [@remique] (#758)
  • New quit key [q] (#771)
  • Proper error message if remote rejects force push (#801)
  • Fixed:
  • Openssl vendoring broken on macos (#772)
  • Amend and other commands not shown in help (#778)
  • Focus locked on commit msg details in narrow term sizes (#780)
  • Non-utf8 file/path names broke filetree (#802)

New in Gitui 0.16.1 (Jun 6, 2021)

  • Added:
  • honor config.showUntrackedFiles improving speed with a lot of untracked items (#752)
  • improve performance when opening filetree-tab (#756)
  • indicator for longer commit message than displayed (#773)
  • Fixed:
  • wrong file with same name shown in file tree (#748)
  • filetree collapsing broken on windows (#761)
  • unnecessary overdraw of the spinner on each redraw (#764)
  • Internal:
  • use git_repository_message [@kosayoda] (#751)

New in Gitui 0.16.1 (Jun 6, 2021)

  • Added:
  • honor config.showUntrackedFiles improving speed with a lot of untracked items (#752)
  • improve performance when opening filetree-tab (#756)
  • indicator for longer commit message than displayed (#773)
  • Fixed:
  • wrong file with same name shown in file tree (#748)
  • filetree collapsing broken on windows (#761)
  • unnecessary overdraw of the spinner on each redraw (#764)
  • Internal:
  • use git_repository_message [@kosayoda] (#751)

New in Gitui 0.16.0 (May 30, 2021)

  • Added:
  • merging branches, pull-merge with conflicts, commit merges (#485)
  • tags-list-popup (delete-tag, go to tagged commit) [@cruessler] (#483)
  • inspect file tree tab (#743)
  • file tree popup (for a specific revision) (#714)
  • warning if commit subject line gets too long (#478)
  • bugreport cmd line arg to help diagnostics [@zcorniere] (#695)
  • Changed:
  • smarter log timestamps (#682)
  • create-branch popup aligned with rename-branch [@bruceCoelho] (#679)
  • smart focus change after staging all files (#706)
  • do not allow to commit when gpgsign enabled (#740)
  • Fixed:
  • selected-tab color broken in light theme [@Cottser] (#719)
  • proper tmp file location to externally edit commit msg (#518)

New in Gitui 0.16.0 RC 1 (May 28, 2021)

  • Added:
  • Merging branches, pull-merge with conflicts, commit merges (#485)
  • Tags-list-popup (delete-tag, go to tagged commit) [@cruessler] (#483)
  • Inspect file tree tab (#743)
  • File tree popup (for a specific revision) (#714)
  • Warning if commit subject line gets too long (#478)
  • --bugreport cmd line arg to help diagnostics [@zcorniere] (#695)
  • Changed:
  • Smarter log timestamps (#682)
  • Create-branch popup aligned with rename-branch [@bruceCoelho] (#679)
  • Smart focus change after staging all files (#706)
  • Do not allow to commit when gpgsign enabled (#740)
  • Fixed:
  • Selected-tab color broken in light theme [@Cottser] (#719)
  • Proper tmp file location to externally edit commit msg (#518)

New in Gitui 0.15.0 (Apr 27, 2021)

  • Added:
  • blame a file [@cruessler] (#484)
  • support commit.template [@wandernauta] (#546)
  • Fixed:
  • debug print when adding a file to ignore
  • fix scrolling long messages in commit details view (#663)
  • limit log messages in log tab (#652)
  • fetch crashed when no upstream of branch is set (#637)
  • enter key panics in empty remote branch list (#643)
  • Internal:
  • cleanup some stringly typed code [@wandernauta] (#655)
  • introduce EventState enum (removing bool for even propagation) [@tisorlawan] (#665)

New in Gitui 0.14.0 (Apr 12, 2021)

  • Added:
  • [w] key to toggle between staging/workdir [@terhechte] (#595)
  • view/checkout remote branches (#617)
  • checkout-remote
  • Changed:
  • ask to pop stash by default (apply using [a] now) [@brunogouveia] (#574)
  • stash_pop
  • Fixed:
  • push branch to its tracking remote (#597)
  • fixed panic when staging lines involving missing newline eof (#605)
  • fixed pull/fetch deadlocking when it fails (#624)

New in Gitui 0.13.0 RC 1 (Mar 14, 2021)

  • Added:
  • Support for pull (fetch + simple merging) (#319)
  • Show used char count in input texts (#466)
  • Support smoother left/right toggle/keys for commit details (#418)
  • Support force push command [@WizardOhio24] (#274)
  • Fixed:
  • Don't close branchlist every time (#550)
  • Fixed key binding for external exitor in vim key bindings [@yanganto] (#549)
  • Fix some potential errors when deleting files while they are being diffed (#490)
  • Push defaults to 'origin' remote if it exists (#494)
  • Support missing pageUp/down support in branchlist (#519)
  • Don't hide branch name while in commit dialog (#529)
  • Don't discard commit message without confirmation (#530)
  • Compilation broken on freebsd (#461)
  • Don’t fail if user.name is not set [@cruessler] (#79) (#228)

New in Gitui 0.11.0 (Feb 3, 2021)

  • Added
  • push to remote (#265) (#267)
  • number of incoming/outgoing commits to upstream (#362)
  • new branch list popup incl. checkout/delete/rename [@WizardOhio24] (#303) (#323)
  • compact treeview [@WizardOhio24] (#192)
  • scrollbar in long commit messages [@timaliberdov] (#308)
  • added windows scoop recipe (#164)
  • added gitui to chocolatey on windows by @nils-a
  • added gitui gentoo instructions to readme [@dm9pZCAq] (#430)
  • added windows installer (msi) to release [@pm100] (#360)
  • command to copy commit hash [@yanganto] (#281)
  • Changed:
  • upgrade dirs to dirs-next / remove cfg migration code (#351) (#366)
  • do not highlight selection in diff view when not focused (#270)
  • copy to clipboard using xclip(linux), pbcopy(mac) or clip(win) [@cruessler] (#262)
  • Fixed:
  • crash when changing git repo while gitui is open (#271)
  • remove workaround for color serialization [@1wilkens] (#149)
  • crash on small terminal size (#307)
  • fix vim keybindings uppercase handling [@yanganto] (#286)
  • remove shift tab windows workaround [@nils-a] (#112)
  • core.editor is ignored [@pm100] (#414)