git-whatchanged(1)
==================

NAME
----
git-whatchanged - Show logs with difference each commit introduces.


SYNOPSIS
--------
'git-whatchanged' <option>...

DESCRIPTION
-----------
Shows commit logs and diff output each commit introduces.  The
command internally invokes 'git-rev-list' piped to
'git-diff-tree', and takes command line options for both of
these commands.

This manual page describes only the most frequently used options.


OPTIONS
-------
-p::
	Show textual diffs, instead of the git internal diff
	output format that is useful only to tell the changed
	paths and their nature of changes.

--max-count=<n>::
	Limit output to <n> commits.

<since>..<until>::
	Limit output to between the two named commits (bottom
	exclusive, top inclusive).

-r::
	Show git internal diff output, but for the whole tree,
	not just the top level.

--pretty=<format>::
	Controls the output format for the commit logs.
	<format> can be one of 'raw', 'medium', 'short', 'full',
	and 'oneline'.

-m::
	By default, differences for merge commits are not shown.
	With this flag, show differences to that commit from all
	of its parents.

	However, it is not very useful in general, although it
	*is* useful on a file-by-file basis.

Examples
--------
git-whatchanged -p v2.6.12.. include/scsi drivers/scsi::

	Show as patches the commits since version 'v2.6.12' that changed
	any file in the include/scsi or drivers/scsi subdirectories

git-whatchanged --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'


Author
------
Written by Linus Torvalds <torvalds@osdl.org> and
Junio C Hamano <junkio@cox.net>


Documentation
--------------
Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT
---
Part of the gitlink:git[7] suite

