Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 22 Oct 01:03
· 37 commits to main since this release

Install

Linux (x64, arm64) and macOS (Apple Silicon):

curl -fsSL https://github.com/ThirtyTech/tt-git/releases/download/v0.3.0/install.sh | TTGIT_VERSION=v0.3.0 sh

Windows (x64, arm64), in PowerShell:

$env:TTGIT_VERSION = 'v0.3.0'; irm https://github.com/ThirtyTech/tt-git/releases/download/v0.3.0/install.ps1 | iex

What's changed

New

  • Blame. Press b on a file in the status pane to blame it in the working tree, or in details to blame it as of that commit. Each line shows when it changed, who changed it (16 author colors, no two authors in a file share one) and in which commit. enter opens the line's commit with the line marked in the diff, and esc comes back. [ and ] step through the history of the selected line, and { and } step through the file's commits, keeping your line on screen. / searches with a regex (n / N for the next and previous match), and ctrl+g, 42G or :42 in the palette go to a line. The title shows when the version you're looking at last changed. Blame
  • Syntax highlighting. Code is colored by language in blame, diffs and the staging view (about 200 languages), and added and removed lines get a green or red background across the row. Set syntax = false to turn it off. Configuration
  • Worktrees. The branches pane has a Worktrees tab once you have a linked worktree. It lists each worktree with its branch, its state (clean, N changed, locked, missing) and its size on disk. enter reopens tt-git in that worktree, d removes it (asking again before --force), n makes a new branch in a new worktree and c copies the path. Worktrees
  • Undo. z undoes the last thing done to HEAD, in tt-git or on the command line: commits, amends, merges, pulls, cherry-picks, rebases, resets and checkouts. Press it again to keep stepping back through the reflog. When you have uncommitted changes, it asks before touching files. Undo
  • Tags. T in the graph or the branches pane creates a lightweight or annotated tag. On the Tags tab, P pushes the selected tag, and d can delete it on the remote as well as locally. Tags
  • Open in editor. e opens the selected file in your editor at the line you're on, from the status pane, the staging view or details. tt-git uses [editor] command, $VISUAL, $EDITOR or git's core.editor. A file that isn't in the working tree opens as a read-only copy of that commit's version. Configuration
  • Plugin events. New tag.created, tag.pushed, tag.deleted and worktree.removed events. Events

Changed

  • Stash individual files. tab in the stash dialog now offers Unstaged, which stashes only unstaged and untracked changes and leaves your staged ones staged. Stashing the selected file now works for file names with special characters and for staged renames and deletions. Stash
  • More mouse support. Click a tab in the branches pane to switch to it, click a changed file in details to show its diff, and use the mouse in the Filter graph popup. Double-click a commit in the graph to open it fullscreen.

Full Changelog: v0.2.0...v0.3.0