gitk
The Git repository browser
TLDR
Show the repository browser for the current git repository
$ gitk
Show repository browser for a specific file or directory
$ gitk [path/to/file_or_directory]
Show commits made since 1 week ago
$ gitk --since="[1 week ago]"
Show commits older than 1/1/2016
$ gitk --until="[1/1/2015]"
Show at most 100 changes in all branches
$ gitk --max-count=[100] --all
SYNOPSIS
gitk [<options>] [<revision range>] [ --] [<path> ...]
DESCRIPTION
OPTIONS
"rev -list options and arguments"
This manual page describes only the most frequently used options . See git-rev-list (1)for a complete list .--all Show all refs (branches, tags, etc .) .
--branches[=<pattern>], --tags[=<pattern>], --remotes[=<pattern>] Pretend as if all the branches (tags, remote branches, resp .) are listed on the command line as <commit> . If <pattern> is given, limit refs to ones matching given shell glob . If pattern lacks ? , * ,or [ , /* at the end is implied .
--since=<date> Show commits more recent than a specific date .
--until=<date> Show commits older than a specific date .
--date -order Sort commits by date when possible .
--merge After an attempt to merge stops with conflicts, show the commits on the history between two branches (i .e . the HEAD and the MERGE_HEAD) that modify the conflicted files and do not exist on all the heads being merged .
--left -right Mark which side of a symmetric difference a commit is reachable from . Commits from the left side are prefixed with a < symbol and those from the right with a > symbol .
--full -history When filtering history with <path>... ,does not prune some history . (See "History simplification" in git-log (1) for a more detailed explanation .)
--simplify -merges Additional option to --full -history to remove some needless merges from the resulting history, as there are no selected commits contributing to this merge . (See "History simplification" in git-log (1) for a more detailed explanation .)
--ancestry -path When given a range of commits to display (e .g . commit1. .commit2 or commit2^commit1 ),only display commits that exist directly on the ancestry chain between the commit1 and commit2 ,i .e . commits that are both descendants of commit1 ,and ancestors of commit2 . (See "History simplification" in git-log (1) for a more detailed explanation .)
-L<start>,<end>:<file>, -L:<funcname>:<file> Trace the evolution of the line range given by "<start>,<end>" (or the function name regex <funcname>) within the <file> . You may not give any pathspec limiters . This is currently limited to a walk starting from a single revision, i .e ., you may only give zero or one positive revision arguments . You can specify this option more than once . Note: gitk (unlike git-log (1))currently only understands this option if you specify it "glued together" with its argument . Do not put a space after -L . <start> and <end> can take one of these forms: '-04' '+03' .sp -1
2.3 number If <start> or <end> is a number, it specifies an absolute line number (lines count from 1) . '-04' '+03' .sp -1
2.3 /regex/ This form will use the first line matching the given POSIX regex . If <start> is a regex, it will search from the end of the previous -L range, if any, otherwise from the start of file . If <start> is it will search from the start of file . If <end> is a regex, it will search starting at the line given by <start> . '-04' '+03' .sp -1
2.3 +offset or -offset This is only valid for <end> and will specify a number of lines before or after the line given by <start> . If is given in place of <start> and <end>, it is a regular expression that denotes the range from the first funcname line that matches <funcname>, up to the next funcname line . searches from the end of the previous -L range, if any, otherwise from the start of file . searches from the start of file .
<revision range> Limit the revisions to show . This can be either a single revision meaning show from the given revision and back, or it can be a range in the form " <from> . . <to> "to show all revisions between <from> and back to <to> . Note, more advanced revision selection can be applied . For a more complete list of ways to spell object names, see gitrevisions (7).
<path> ... Limit commits to the ones touching files in the given paths . Note, to avoid ambiguity with respect to revision names use " --" to separate the paths from any preceding options .
"gitk -specific options"
--argscmd=<command> Command to be run each time gitk has to determine the revision range to show . The command is expected to print on its standard output a list of additional revisions to be shown, one per line . Use this instead of explicitly specifying a <revisionrange> if the set of commits to show may vary between refreshes .
--select -commit=<ref> Select the specified commit after loading the graph . Default behavior is equivalent to specifying --select -commit=HEAD .
EXAMPLES
gitk v2 .6 .12 . . include/scsi drivers/scsi Show the changes since version v2.6 .12 that changed any file in the include/scsi or drivers/scsi subdirectories
gitk --since="2 weeks ago" --gitk Show the changes during the last two weeks to the file gitk . The " --" is necessary to avoid confusion with the branch named gitk
gitk --max -count=100 --all --Makefile Show at most 100 changes made to the file Makefile . Instead of only looking for changes in the current branch look in all branches .
FILES
2.3 $XDG_CONFIG_HOME/git/gitk if it exists, otherwise '-04' '+03' .sp -1
2.3 $HOME/.gitk if it exists If neither of the above exist then $XDG_CONFIG_HOME/git/gitk is created and used by default . If $XDG_CONFIG_HOME is not set it defaults to $HOME/.config in all cases .
HISTORY
git://ozlabs .org/~paulus/gitk .RE
GIT
SEE ALSO
qgit(1) A repository browser written in C++ using Qt . tig(1) A minimal repository browser and Git tool output highlighter written in C using Ncurses .