Merge branch 'master' of git://repo.or.cz/git/fastimport
[gitweb.git] / Documentation / git-commit.txt
index b4528d72ba376bb0444002698196afa89f781fc1..f96142f96a733c9cd71ecffd3325bbb168a8ef38 100644 (file)
@@ -3,13 +3,14 @@ git-commit(1)
 
 NAME
 ----
-git-commit - Record your changes
+git-commit - Record changes to the repository
 
 SYNOPSIS
 --------
 [verse]
-'git-commit' [-a] [-s] [-v] [(-c | -C) <commit> | -F <file> | -m <msg>]
-          [--no-verify] [--amend] [-e] [--author <author>]
+'git-commit' [-a | --interactive] [-s] [-v] [-u]
+          [(-c | -C) <commit> | -F <file> | -m <msg> | --amend]
+          [--no-verify] [-e] [--author <author>]
           [--] [[-i | -o ]<file>...]
 
 DESCRIPTION
@@ -35,6 +36,10 @@ methods:
    before, and to automatically "rm" files that have been
    removed from the working tree, and perform the actual commit.
 
+5. by using the --interactive switch with the 'commit' command to decide one
+   by one which files should be part of the commit, before finalizing the
+   operation.  Currently, this is done by invoking `git-add --interactive`.
+
 The gitlink:git-status[1] command can be used to obtain a
 summary of what is included by any of the above for the next
 commit by giving the same set of parameters you would give to
@@ -66,7 +71,7 @@ OPTIONS
        Override the author name used in the commit.  Use
        `A U Thor <author@example.com>` format.
 
--m <msg>::
+-m <msg>|--message=<msg>::
        Use the given <msg> as the commit message.
 
 -s|--signoff::
@@ -110,8 +115,21 @@ but can be used to amend a merge commit.
        as well.  This is usually not what you want unless you
        are concluding a conflicted merge.
 
+-u|--untracked-files::
+       Show all untracked files, also those in uninteresting
+       directories, in the "Untracked files:" section of commit
+       message template.  Without this option only its name and
+       a trailing slash are displayed for each untracked
+       directory.
+
+-v|--verbose::
+       Show unified diff between the HEAD commit and what
+       would be committed at the bottom of the commit message
+       template.  Note that this diff output doesn't have its
+       lines prefixed with '#'.
+
 -q|--quiet::
-       Supress commit summary message.
+       Suppress commit summary message.
 
 \--::
        Do not interpret any more arguments as options.
@@ -142,11 +160,6 @@ $ git add hello.c
 $ git commit
 ------------
 
-////////////
-We should fix 'git rm' to remove goodbye.c from both index and
-working tree for the above example.
-////////////
-
 Instead of staging files after each individual change, you can
 tell `git commit` to notice the changes to the files whose
 contents are tracked in
@@ -223,6 +236,12 @@ refuses to run when given pathnames (but see `-i` option).
 DISCUSSION
 ----------
 
+Though not required, it's a good idea to begin the commit message
+with a single short (less than 50 character) line summarizing the
+change, followed by a blank line and then a more thorough description.
+Tools that turn commits into email, for example, use the first line
+on the Subject: line and the rest of the commit in the body.
+
 include::i18n.txt[]
 
 ENVIRONMENT VARIABLES