Tig is an ncurses-based text-mode interface for git. It functions mainly
as a Git repository browser, but can also assist in staging changes for
commit at chunk level and act as a pager for output from various Git
commands.
Resources
-
Homepage: http://jonas.nitro.dk/tig/
-
Manual: http://jonas.nitro.dk/tig/manual.html
-
Tarballs: http://jonas.nitro.dk/tig/releases/
-
Git URL: git://github.com/jonas/tig.git (master) or
git://repo.or.cz/tig.git (mirror)
-
Gitweb: http://repo.or.cz/w/tig.git
-
Q&A: http://stackoverflow.com/questions/tagged/tig
Bugs and Feature Requests
Bugs and feature requests can be reported using the issue tracker at
https://github.com/jonas/tig/issues or by mail to either the Git mailing
list or directly to the maintainer. Ensure that the word "tig" is in the
subject. For other Tig related questions please use Stack Overflow:
http://stackoverflow.com/questions/tagged/tig.
Installation and News
Information on how to build and install Tig are found in
the installation instructions.
from https://github.com/jonas/tig
http://jonas.nitro.dk/tig/
----------------------------------------------
Installation using
from https://github.com/jonas/tig/blob/master/INSTALL.adoc
from https://github.com/jonas/tig
http://jonas.nitro.dk/tig/
----------------------------------------------
Installation instructions
Download a tarball from http://jonas.nitro.dk/tig/releases or clone the Tig
repository git://github.com/jonas/tig.git.
The quick and simple way to install Tig is:
$ make $ make install
By default,
tig
is installed in $HOME/bin
. To install tig
elsewhere set
prefix
to the desired path:$ make prefix=/usr/local $ sudo make install prefix=/usr/local
Documentation files, such as manpages, are distributed in the release tarballs,
and can be installed using:
$ make install-doc
When installing directly from the Tig repository,
make install-doc
will assume
that the documentation tool chain is available and build the documentation
locally. In case you do not wish to install the required tools, documentation
can be installed from the release branch using:$ make install-release-doc
Before upgrading, you are advised to read the release notes.
Installation using configure
Optionally, you can use the
configure
script to detect dependencies:$ ./configure $ make $ make install
If your
iconv
library is not in the default library and include path, you need
to pass the --with-libiconv
option to configure
to tell it where to look.
Note, if you are building from the Tig repository, you need to generate
configure
yourself. First, ensure that autoconf
is installed on your system,
and then run the following command:$ make configure
Build configuration
Build settings are read from the file
config.make
and for certain systems also
from contrib/config.make-$kernel
. An example of the latter is Mac OS X, where
contrib/config.make-Darwin
provides out-of-the-box configuration for using the
system ncurses library and linking with the iconv library. This makes it easy to
configure the build without having to use the configure
script. As a side
note, configure
itself generates a config.make
file.
Apart from the different standard
make
build variables (CC
, CFLAGS
, etc.)
and standard configure
variables (prefix
, bindir
, etc.), build settings
can be one of the following flags:-
NO_SETENV
: Define this variable to enable work-around for missingsetenv()
.
-
NO_MKSTEMPS
: Define this variable to enable work-around for missingmkstemps()
.
-
NO_BUILTIN_TIGRC
: Reduce the size of the binary by not including a built-in tigrc. The built-in tigrc is used as a fallback when notigrc
is found in the system configuration directory (e.g./etc
).
The following example
config.make
manually configures Tig to use the ncurses
library with wide character support and include the proper ncurses header file
(see tig.h for more information):LDLIBS = -lncursesw CPPFLAGS = -DHAVE_NCURSESW_CURSES_H
For more examples of build settings, see
contrib/config.make
and
config.make.in
.Tools and packages
The following tools and packages are needed:
Tool | Description |
---|---|
git-core | Tig is just a frontend for Git. |
ncurses or ncursesw |
Be sure to have the development files
installed. Usually they are available in a
separate package ending with -dev .
Ncurses with wide character support (ncursesw) is required to properly handle UTF-8 encoded strings. Note for packagers: For Tig’s configure
script to work as expected you should avoid
configuring and building ncurses using
--with-shared . |
iconv | If iconv is not provided by the c library you need to change the Makefile to link it into the binary. |
The following optional tools and packages are needed for creating the
configure script and building documentation:
Tool | Description |
---|---|
autoconf | Contains autoreconf for generating configure from configure.ac. |
asciidoc (>= 8.4) | Generates HTML and (DocBook) XML from text. |
xmlto | Generates manpages and chunked HTML from XML. |
DocBook XSL (>= 1.72.0) | Used by xmlto for building manpages. |
DocBook (DSSL/Jade) tools | Generates PDF from XML. Also known as docbook-utils |
from https://github.com/jonas/tig/blob/master/INSTALL.adoc