GIT-LOG(1)

NAME
git-log - Show commit logs

SYNOPSIS
git-log <option>...

DESCRIPTION
Shows the commit logs. The command takes options applicable to the git-rev-list(1) command to control what is shown and how, and options applicable to the git-diff-tree(1) commands to control how the change each commit introduces are shown. This manual page describes only the most frequently used options.

OPTIONS

--pretty[=<format>]
    Pretty-prints the details of a commit. --pretty without an explicit =<format> defaults to medium. If the commit is a merge, and if the pretty-format is not oneline, email or raw, an additional line is inserted before the Author: line. This line begins with "Merge: " and the sha1s of ancestral commits are printed, separated by spaces. Note that the listed commits may not necessarily be the list of the direct parent commits if you have limited your view of history: for example, if you are only interested in changes related to a certain directory or file. Here are some additional details for each format:

    •   oneline

        <sha1> <title line>
        This is designed to be as compact as possible.

    •   short

        commit <sha1>
        Author: <author>

        <title line>

    •   medium

        commit <sha1>
        Author: <author>
        Date: <date>

        <title line>

        <full commit message>

    •   full

        commit <sha1>
        Author: <author>
        Commit: <committer>

        <title line>

        <full commit message>

    •   fuller

        commit <sha1>
        Author: <author>
        AuthorDate: <date & time>
        Commit: <committer>
        CommitDate: <date & time>

        <title line>

        <full commit message>

    •   email

        From <sha1> <date>
        From: <author>
        Date: <date & time>
        Subject: [PATCH] <title line>

        full commit message>

    •   raw The raw format shows the entire commit exactly as stored in the commit object. Notably, the SHA1s are displayed in full, regardless of whether --abbrev or --no-abbrev are used, and parents information show the true parent commits, without taking grafts nor history simplification into account.

--max-count=<n>
    Limits the number of commits to show.

<since>..<until>
    Show only commits between the named two commits.

-p  Show the change the commit introduces in a patch form.

<paths>...
    Show only commits that affect the specified paths.

EXAMPLES

git log --no-merges
    Show the whole commit history, but skip any merges

git log v2.6.12.. include/scsi drivers/scsi
    Show all commits since version v2.6.12 that changed any file in the include/scsi or drivers/scsi subdirectories

git log --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

git log -r --name-status release..test
    Show the commits that are in the "test" branch but not yet in the "release" branch, along with the list of paths each commit modifies.

AUTHOR
Written by Linus Torvalds <torvalds@osdl.org>

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

GIT
Part of the git(7) suite