NAME 

git-commit-tree - Creates a new commit object

SYNOPSIS 

git-commit-tree <tree> [-p <parent commit>]* < changelog

DESCRIPTION 

Creates a new commit object based on the provided tree object and emits the new commit object id on stdout. If no parent is given then it is considered to be an initial tree.

A commit object usually has 1 parent (a commit after a change) or up to 16 parents. More than one parent represents a merge of branches that led to them.

While a tree represents a particular directory state of a working directory, a commit represents that state in "time", and explains how to get there.

Normally a commit would identify a new "HEAD" state, and while git doesn't care where you save the note about that state, in practice we tend to just write the result to the file that is pointed at by .git/HEAD, so that we can always see what the last committed state was.

OPTIONS 

<tree>
An existing tree object
-p <parent commit>
Each -p indicates the id of a parent commit object.

COMMIT INFORMATION 

A commit encapsulates:
*
all parent object ids
*
author name, email and date
*
committer name and email and the commit time. If not provided, "git-commit-tree" uses your name, hostname and domain to provide author and committer info. This can be overridden by either .git/config file, or using the following environment variables.
GIT_AUTHOR_NAME
GIT_AUTHOR_EMAIL
GIT_AUTHOR_DATE
GIT_COMMITTER_NAME
GIT_COMMITTER_EMAIL
(nb "<", ">" and "\n"s are stripped)

In .git/config file, the following items are used for GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL:

[user]
        name = "Your Name"
        email = "
A commit comment is read from stdin (max 999 chars). If a changelog
entry is not provided via "<" redirection, "git-commit-tree"
will just wait for one to be entered and terminated with
^D.

DIAGNOSTICS 

You don't exist. Go away!
The passwd(5) gecos field couldn't be read
Your parents must have hated you!
The password(5) gecos field is longer than a giant static buffer.
Your sysadmin must hate you!
The password(5) name field is longer than a giant static buffer.

SEE ALSO 

git-write-tree(1)

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 (7) suite