Documentation / git-commit-tree.txton commit ident: check /etc/mailname if email is unknown (8a55caa)
   1git-commit-tree(1)
   2==================
   3
   4NAME
   5----
   6git-commit-tree - Create a new commit object
   7
   8
   9SYNOPSIS
  10--------
  11'git commit-tree' <tree> [(-p <parent commit>)...] < changelog
  12
  13DESCRIPTION
  14-----------
  15This is usually not what an end user wants to run directly.  See
  16linkgit:git-commit[1] instead.
  17
  18Creates a new commit object based on the provided tree object and
  19emits the new commit object id on stdout.
  20
  21A commit object may have any number of parents. With exactly one
  22parent, it is an ordinary commit. Having more than one parent makes
  23the commit a merge between several lines of history. Initial (root)
  24commits have no parents.
  25
  26While a tree represents a particular directory state of a working
  27directory, a commit represents that state in "time", and explains how
  28to get there.
  29
  30Normally a commit would identify a new "HEAD" state, and while git
  31doesn't care where you save the note about that state, in practice we
  32tend to just write the result to the file that is pointed at by
  33`.git/HEAD`, so that we can always see what the last committed
  34state was.
  35
  36OPTIONS
  37-------
  38<tree>::
  39        An existing tree object
  40
  41-p <parent commit>::
  42        Each '-p' indicates the id of a parent commit object.
  43
  44
  45Commit Information
  46------------------
  47
  48A commit encapsulates:
  49
  50- all parent object ids
  51- author name, email and date
  52- committer name and email and the commit time.
  53
  54While parent object ids are provided on the command line, author and
  55committer information is taken from the following environment variables,
  56if set:
  57
  58        GIT_AUTHOR_NAME
  59        GIT_AUTHOR_EMAIL
  60        GIT_AUTHOR_DATE
  61        GIT_COMMITTER_NAME
  62        GIT_COMMITTER_EMAIL
  63        GIT_COMMITTER_DATE
  64        EMAIL
  65
  66(nb "<", ">" and "\n"s are stripped)
  67
  68In case (some of) these environment variables are not set, the information
  69is taken from the configuration items user.name and user.email, or, if not
  70present, system user name and the hostname used for outgoing mail (taken
  71from `/etc/mailname` and falling back to the fully qualified hostname when
  72that file does not exist).
  73
  74A commit comment is read from stdin. If a changelog
  75entry is not provided via "<" redirection, 'git commit-tree' will just wait
  76for one to be entered and terminated with ^D.
  77
  78include::date-formats.txt[]
  79
  80Diagnostics
  81-----------
  82You don't exist. Go away!::
  83    The passwd(5) gecos field couldn't be read
  84Your parents must have hated you!::
  85    The passwd(5) gecos field is longer than a giant static buffer.
  86Your sysadmin must hate you!::
  87    The passwd(5) name field is longer than a giant static buffer.
  88
  89Discussion
  90----------
  91
  92include::i18n.txt[]
  93
  94FILES
  95-----
  96/etc/mailname
  97
  98SEE ALSO
  99--------
 100linkgit:git-write-tree[1]
 101
 102GIT
 103---
 104Part of the linkgit:git[1] suite