tig-2.5.5
Improvements:
-
Make word-diff a toggleable option. (#1119, #1125)
-
Add Linux installation instructions. (#1121, #1126)
-
Allow :back to work across separate blame views. (#1123, #1127)
-
Add auto-refresh to log view. (#1128)
-
Expose
%(file_old), useful for deleted and renamed files. (#1132) -
Enable jumping back in main view. (#628, #1138)
-
Add PCRE (Perl Compatible Regular Expressions) support. (#1137, #1143)
-
Pass command line args through to diff-files in status view. (#1152, #1155)
-
Remove quotes from TIG_LS_REMOTE to allow inline shell commands. (#1160, #1161)
-
Avoid pushing identical history state in main view.
-
Replace useless strncpy to avoid compilation warning with GCC 8.
-
Update utf8proc to v2.7.0.
-
Update distclean rule to preserve tarball contents. (#1167, #1169)
-
Add reference types stash and other. (#1160, #1172)
-
Auto refresh view upon option change.
-
Allow to toggle revision filtering. (#1173)
Bug fixes:
-
Fix null dereferences on unset format strings. (#1136, #1159)
-
Fix invalid read in log_read. (#1128)
-
Restore support for tig log --graph. (#1128)
-
Further fix to fullscreen navigation.
-
Fix blame when opened from an initial diff view. (#1135)
-
Fix stash view when using tig --all or tig revs. (#1146, #1147)
-
Avoiding null pointer dereference. (#1096)
-
Fix navigation between chunks after splitting chunk. (#1101, #1162)
-
Fix status line when toggling general options. (#1163, #1164)
-
Honor reference-format = hide:tag in diff view. (#1168, #1170)
-
Fix crash on :toggle file-args.
tig-2.5.4
Improvements:
-
Add FreeBSD installation instructions. (#1093)
-
Add TIG_EDITOR environment variable to configure editor. (#889, #1098)
-
Enable mailmap by default to match git log’s behaviour. (#1104, #1105)
-
Enable tilde expansion for diff-highlight. (#1107)
Bug fixes:
-
Escape variables with %% in external commands. (#1091, #1095)
-
Fix parsing of -L argument. (#1100)
-
Bugfix: smart-case does not work when search term contains a space. (#1108)
-
Use ncursesw by default on Linux. (#920)
-
Replace obsolete macro ‘AC_CONFIG_HEADER’ in configure.ac.
tig-2.5.3
Bug fixes:
-
Fix autoconf checking for readline. (#1072)
-
Fix segfault when saving a view with no column.
-
Reset view→parent when main view is promoted.
-
Fix segfault when pressing Enter in a child main view.
-
Restore lazy navigation.
-
Format time_t values portably and fix other values too. (#1084, #1085)
-
Fix loop when wrapping line with ISO-8859-1 character. (#1087, #1088)
tig-2.5.2
Incompatibilities:
-
Change directory from the next argument, from now use
tig -C /path/to/repo. (#1079)
Improvements:
-
Jump from blame to commit. (#355)
-
Start blame of an uncommitted deleted line from HEAD so the line’s origin can be traced. (#1008, #1009)
-
Add line-graphics = auto. (#834, #1019)
-
Allow maxwidth to be expressed in % of the view width. (#1021)
-
Pass stash args through. (#1022, #1030)
-
Make build work on IBM i. (#1051, #1052)
-
Restore fullscreen navigation. (#1053)
-
Update utf8proc to v2.6.1.
-
Add some range so control chars ^ and _ are also supported. (#1041, #1058)
-
Disable ncurses extended key values so that esc-codes can be used. (#1046, #1049)
-
Use id column for commit id only. (#1025, #1056)
-
Some minor updates for scrolling and for a double-click in diff. (#1060)
-
Add scroll-half-page-up and scroll-half-page-down actions. (#531, #1075)
-
Allow to generate a compilation database. (#1064)
-
New command stage-update-part.
-
The line number before a diff was applied is exposed as
%(lineno_old). (#1081)
Bug fixes:
-
Fix wrapping of lines with multibyte characters. (#988)
-
Improve highlighting of search with $ regex. (#1000)
-
Update tracking branch when refreshing status view. (#1015)
-
Fix vertical lines in Putty with UTF-8 graphics. (#981, #983)
-
Fix parsing of three-way chunk headers with extra dashes.
-
Update tracking branch when refreshing status view. (#1015, #1020)
-
Handle filename with space in diff view. (#1035)
-
The stash view requires a working tree.
-
Replace useless strncpy to avoid compilation warning. (#1036)
-
Zsh completion fixes. (#940, #1047)
-
Handle undefined __git_complete. (#1011, #1055)
-
Fix help messages for half-page and page up. (#1054)
-
Let
-S,-Gand--grep=pattern override readline history. -
Fix bash completion issue with worktrees (#1018).
-
Fix parsing of commit line from
git log --left-rightoutput in pager view. -
Fix %(lineno) computation for hunk postimages that span only one line. (#1062)
-
Align relative-compact dates to the right. (#1067)
-
Fix empty split diff view when navigating quickly in the stash view.
-
Avoid depending on wcwidth in test by removing Variation Selector. (#1065)
-
Open the blob view with the cursor correctly positioned.
-
Update %(text) when navigating diff contents. (#1082)
tig-2.5.1
Improvements:
-
bash/zsh completion: reimplement and decrease runtime by factor 1863. (#795)
-
Add binding to reflog view to toggle reference display.
-
Fail if tig is given an invalid or ambiguous ref. (#980)
-
Make tig process-group leader an option. (#986, #951)
-
Handle GIT_WORK_TREE environment variable.
-
The blame view requires a working tree.
-
Fix use of deprecated vwprintw() function.
-
Update utf8proc to v2.5.0.
-
Add --word-diff=plain colorizing support. (#221)
Bug fixes:
-
Fix segmentation fault. (#971)
-
Fix cursor position after "Move to parent" in blame view. (#973)
-
Fix crash on adding a line to a view. (#523)
-
Fix memory leak in diff unit.
-
Fix loop after refresh or change in refs/main split view. (#991)
-
Fix occasional crash on custom key bindings. (#1001)
tig-2.5.0
Improvements:
-
Single file view enters blame mode on "b". (#804)
-
Show untracked files in the default view. (#762)
-
Disable graph if log.follow is enabled and there is only one pathspec. (#881)
-
Disable graph for author searches.
-
git_colors: interpret ul as underline.
-
Add refname variable. (#900)
-
Add -C option to specify the working directory. (#570)
-
Improve behaviour of auto and periodic refresh modes. (#389, #441, #482, #794, #888, #932)
-
Add support for repos created with git --work-tree. (#872)
-
Add diff-highlight to pager mode.
-
Show annotated commits in main view. (#819)
-
Introduce reflog view. (#538)
-
Add option to start with cursor on HEAD commit. (#755)
-
Support combined diffs with more than 2 parents.
-
Improve how a toggle option value is shown on the status line. (#879)
-
Add options to filter refs output. (#694)
-
Update utf8proc to v2.4.0. (#961)
Bug fixes:
-
Fix garbled cursor line with older ncurses versions.
-
Fix diff highlighting of removed lines starting with — and added lines starting with ++. (#871, #875)
-
Fix loop when displaying search result if regex matches an empty string. (#866)
-
Add synchronous command description in tigrc.
-
Fix parsing of git rev-parse output. (#884)
-
Propagate --first-parent to diff arguments. (#861)
-
Use proper type for hash table size. (#858)
-
Fix incorrect cppcheck warning about realloc() use.
-
Don’t shift signed int by 31 bits.
-
Fix Vim going background after running Tig outside of a git repository. (#906)
-
make-builtin-config: use "read -r". (#912)
-
Fix segfaults with readline 8.0. (#893)
-
Reset state before closing stage view automatically.
-
Don’t use a child view as previous view.
-
Force reload of VIEW_FLEX_WIDTH views only when needed.
-
Combined diff uses @@@ as hunk marker.
-
Fix memory leak induced by tig grep.
-
Fix memory leak in main view.
-
Exit gracefully if refs view was defined without ref column. (#897)
-
Fix pager view not moving up when child view is open.
-
make-builtin-config: Fix unportable sed usage in read_tigrc().
-
Properly detect combined diffs. (#942)
tig-2.4.1
Bug fixes:
-
Add
CURSES_CFLAGStoCPPFLAGS. (#856, Linuxbrew/homebrew-core#8440)
tig-2.4.0
Improvements:
-
Add send-child-enter option to control interaction with child views. (#791)
-
Update make config defaults for Cygwin to ncurses6. (#792)
-
Build against netbsd-curses. (#789)
-
Change the blame view to render more like
git blame. (#812) -
Improve worktree and submodule support. (#459, #781, #783)
-
Support running Tig via a Git alias. (#763)
-
Use ISO-8601 letters for short relative dates. (#759, #760)
-
Change date formatting to show time zones by default. (#428, #811)
-
Use utf8proc to handle Unicode characters. (#827)
Bug fixes:
-
Fix
file(1)argument on Linux used for resolving encodings. (#788) -
Fix underflow in the file search. (#800, #801)
-
Fix line numbers in grep view when scrolled. (#813)
-
Pass command line args through to the stage view. (#569, #823)
-
Fix resource leak. (#780)
-
Fix various compiler warnings and pointer arithmetic. (#799, #803)
-
Workaround potential null pointer dereferences. (#824)
-
Bind to single and double quotes by using the <SingleQuote> and <DoubleQuote> key mappings. (#821)
-
Make Tig the process-group leader and clean child processes. (#828, #837)
-
Fix sh compatibility in
contrib/tig-pick. (#832) -
Fix incorrect behaviour of up and down keys in diff view when opened from diff preview. (#802, #835)
-
Open the stage view when maximizing a split diff view of (un)staged changes. (#836)
-
Use fully qualified reference name for tags when conflicting with branch name. (#746, #787, #849)
-
Fix resize not working after entering command. (#845) (#846)
-
Use stack allocated memory to handle
TIG_LS_REMOTE. (#839) -
Fix deleted file mode line remains highlighted after hovering in diff or stage view. (#851)
-
Fix
TIG_LS_REMOTEnot working with git-ls-remote(1). (#853, #854)
tig-2.3.3
Bug fixes:
-
Revert "Handle \n like \r (#758)". (GH #769)
-
Fix GH #164 by catching SIGHUP.
-
Change
refs_tagstype tosize_t.
tig-2.3.2
Bug fixes:
-
Fix busy loop detection to handle large repos. (GH #164)
tig-2.3.1
Improvements:
-
Restore TTY attributes. (GH #725)
-
Handle
\nlike\r. (GH #758)
Bug fixes:
-
Add workaround that detects busy loops when Tig loses the TTY. This may happen if Tig does not receive the HUP signal (e.g. when started with
nohup). (GH #164) -
Fix compatibility with ncurses-5.4 which caused copy-pasting to not work in the prompt. (GH #767)
-
tig(1): document correct environment variable. (GH #752)
tig-2.3.0
Incompatibilities:
-
The
widthsetting on thestatus,textandcommit-titlecolumns was never applied and has been removed. (GH #617)
Improvements:
-
Improve load performance by throttling screen updates. (GH #622, #629)
-
Speed up graph rendering. (GH #638)
-
Enable scroll optimizations for Terminal.app and iTerm2. (GH #637)
-
Improve the test suite portability to not depend on GNU sed. (GH #609, #614)
-
Make build reproducible. (https://reproducible-builds.org/) (GH #613)
-
Enable binding to more symbolic keys and keys with control modifier:
F13-F19,ShiftLeft,ShiftRight,ShiftDel,ShiftHome,ShiftEnd,ShiftTab,Ctrl-C,Ctrl-V,Ctrl-S, andCtrl-@. (GH #314, #619, #642) -
Persist readline history to
~/.tig_historyor$XDG_DATA_HOME/tig/history. Usehistory-sizeto control the number of entries to save. (GH #620, #713, #714, #718) -
Preload last search from persistent history. (GH #630)
-
Add
view-close-no-quitaction, unbound by default. (GH #607) -
Add
mouse-wheel-cursoroption (off by default) when set to true causes wheel actions to prefer moving the cursor instead of scrolling. (GH #608) -
Add
truncation-delimiteroption, set to~by default. (GH #646) -
Add
-qparameter tosourcefor "source-if-present". (GH #612) -
Add
:echoprompt command to display text in the status bar. (GH #626, #636) -
Make
diff-highlightcolors configurable. (GH #625, #633) -
Let Ctrl-C exit Y/N dialog, menu prompts and the file finder. (GH #632, #648)
-
Hide cursor unless at textual prompt. (GH #643)
-
Expand tilde (~) in
:scriptpaths. (GH #674) -
Show single-line output of external command in status bar. (GH #200, #557, #678)
-
Disable the graph when
--no-mergesis passed. (GH #687) -
Print backtraces on segfault in debug mode.
-
Ignore script lines starting with
#(comment). (GH #705) -
Complete
repo:*variables when readline is enabled. (GH #702) -
Incorporate XTerm’s
wcwidth.cto find Unicode widths. (GH #691)
Bug fixes:
-
Fix graph display issues. (GH #419, #638)
-
Fix and improve rendering of Unicode characters. (GH #330, #621, #644, #682)
-
Handle hyphenated directory names when listing content. (GH #602)
-
Do not jump to next match when cancelling the search prompt. (GH #627)
-
Fix clearing of the status line after
Ctrl-C. (GH #623, #649) -
Fix handling of width on line-number and trimmed width of 1. (GH #617)
-
Set cursor position when not updating prompt contents. (GH #647)
-
Erase status line at exit time for users without altscreen-capable terminals. (GH #589)
-
Fix unexpected keys when restoring from suspend (
Ctrl-Z). (GH #232) -
contrib/vim.tigrc: Also bind G in the main as a workaround for limitations of the
noneaction. (GH #594, #599) -
Only override
blame-optionswhen commands are given and fix parsing of-C. (GH #597) -
Fix diff name discovery to better handle prefixes.
-
Interpret button5 as wheel-down. (GH #321, #606)
-
Fix
back/parentin tree view. (GH #641) -
Fix memory corruption in
concat_argvand file finder. (GH #634, #655) -
Fix reading from stdin for
tig show. -
Document problem of outdated system-wide
tigrcfiles in Homebrew. (GH #598) -
Repaint the display when toggling
line-graphics. (GH #527) -
Fix custom date formatting support longer strings. (GH #522)
-
Don’t segfault on ":exec" irregular args. (GH #686)
-
Fix segfault when calling htab_empty. (GH #663, #745)
tig-2.2.2
Upgrade instructions:
-
The
status-untracked-dirsoption was renamed tostatus-show-untracked-dirsto match the newstatus-show-untracked-filesoption.
Improvements:
-
Use
diff-optionswhen preparing the diff in the stage view to make the diff state configurable. (GH #545) -
Add status-show-untracked-files option mirroring Git’s status.showUntrackedFiles to toggle display of untracked files. in the status view. On by default. (GH #562)
-
Update
ax_with_curses.m4and usepkg-configto detect. (GH #546) -
Add
tig-pickscript for using Tig as a commit picker. (GH #575, #580) -
Add "smart case" option (set ignore-case = smart-case) to ignore case when the search string is lower-case only. (GH #320, #579)
Bug fixes:
-
Fix author ident cache being keyed by email only. (GH #424, #526, #547)
-
Fix periodic refresh mode to properly detect ref changes. (GH #430, #591)
-
Add workaround for detecting failure to start the diff-highlight process.
-
Show diffs in the stash view when
set mailmap = true. (GH #556) -
Fix parsing of git-log revision arguments, such as
--exclude=...in conjunction with--all. (GH #555) -
Fix diff stat parsing for binary copies.
-
Fix crash when resizing terminal while search is in progress. (GH #515, #550)
-
Fix argument filtering to pass more arguments through to Git.
-
Check for termcap support in split tinfo libs. (GH #568, #585)
tig-2.2.1
Tarballs should now be downloaded from GitHub. Either go to https://github.com/jonas/tig/releases or use the following pattern:
https://github.com/jonas/tig/releases/download/tig-VERSION/tig-VERSION.tar.gz
MD5 checksums can be found at:
https://github.com/jonas/tig/releases/download/tig-VERSION/tig-VERSION.tar.gz.md5
Similarly, the home page is now also on GitHub at https://jonas.github.io/tig/. A big thanks to Simon L. B. Nielsen for generously hosting Tig on nitro.dk!
Improvements:
-
Support Git’s diff-highlight program when
diff-highlightis set to either true or the path of the script to use for post-processing. -
Add navigation between merge commits. (GH #525)
-
Add A as a binding to apply a stash without dropping it.
-
Bind Ctrl-D and Ctrl-U to half-page movements by default.
-
manual: Mention how to change default Up/Down behavior in diff view.
Bug fixes:
-
Reorganize checking of libraries for termcap functions.
-
Fix
:goto <id>error message.
tig-2.2
Incompatibilities:
-
Note that all user-defined commands are now executed at the repository root instead of whatever subdirectory Tig was started in. (GH #412)
-
Remove
cmdline-argsoption to avoid problems where setting it in~/.tigrcpotentially breaks other views due to its "context-sensitive" nature, where agit-logoption maybe causegit-grepto fail. (GH #431)
Improvements:
-
Use .mailmap to show canonical name and email addresses, off by default. Add
set mailmap = yesto~/.tigrcto enable. (GH #411) -
Highlight search results, configurable via
search-resultcolor. (GH #493) -
Wrap around when searching, configurable via
wrap-searchsetting. -
Populate
%(file)with file names from diff stat. (GH #404) -
tig --mergeimplies--boundarysimilar to gitk. -
Expose repository variables to external commands, e.g.
%(repo:head)gives the branch name of the current HEAD and%(repo:cdup)for the repo root path. -
Add
make uninstall. (GH #417) -
Add ZSH completion file (based on Bash completion) (GH #433)
-
Expose the text of the currently selected line as the %(text) (GH #457)
-
Allow users to specify rev arguments to blame (GH #439)
-
Update OSX make config to find brew installed ncurses
-
Add sample git-flow keybinding (GH #421)
-
Add chocolate theme (GH #432)
-
Show stash diffs. (GH #328)
-
Make user tigrc location configurable. (GH #479)
-
Compact relative date display mode. (GH #331)
-
Add date column option controlling whether to show local date.
-
Move to parent commit in the main view. (GH #388)
-
Add
:goto <rev>prompt command to go to agit-rev-parse`d revision, e.g. `:goto some/branchor:goto %(commit)^2. -
Respect the XDG standard for configuration files. (GH #513)
-
Show tracking information in
tig status(GH #504) -
Resolve diff paths when
diff.noprefixis true. (GH #487, #488) -
Support for custom
strftime(3)date formats, e.g.:set main-view-date = custom set main-view-date-format = "%Y-%m-%d"
Bug fixes:
-
Prevent staged rename from displaying unstaged changes (GH #472, #491)
-
Fix corrupt chunk header during staging of single lines. (GH #410)
-
Fix out of bounds read in graph-v2 module. (GH #402)
-
Add currently checked out branch to
%(branch). (GH #416) -
Size diff stats correctly for split views.
-
Fix
git-worktreesupport by usinggit-show-ref. (GH #437)