The description of git-commit jumps right into the commit content, which is important, but it fails to mention how the commit is "added" to the repository. Update the first paragraph saying a bit more about branch update to fill this gap. While at there, add a couple linkgit references when the command is first mentioned. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> --- On Thu, Jan 31, 2019 at 02:43:41PM +0700, Duy Nguyen wrote: > I notice git-commit.txt does not say anything about branch update > business though. Maybe some more updates there... Maybe something like this. Although I feel I'm quite close to some rabbit hole. Documentation/git-commit.txt | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt index f970a43422..8148ba10b3 100644 --- a/Documentation/git-commit.txt +++ b/Documentation/git-commit.txt @@ -17,16 +17,19 @@ SYNOPSIS DESCRIPTION ----------- -Stores the current contents of the index in a new commit along -with a log message from the user describing the changes. +Creates a new commit containing the current contents of the index with +a log message from the user describing the changes. The commit is the +direct child of the tip of the current branch. The branch is updated +to point to the new commit (unless no branch is associated with the +working tree, see "NOTES" section). -The content to be added can be specified in several ways: +The content to be committed can be specified in several ways: -1. by using 'git add' to incrementally "add" changes to the - index before using the 'commit' command (Note: even modified - files must be "added"); +1. by using linkgit:git-add[1] to incrementally "add" changes to the + index before using the 'commit' command (Note: even modified files + must be "added"); -2. by using 'git rm' to remove files from the working tree +2. by using linkgit:git-rm[1] to remove files from the working tree and the index, again before using the 'commit' command; 3. by listing files as arguments to the 'commit' command @@ -349,6 +352,18 @@ changes to tracked files. :git-commit: 1 include::date-formats.txt[] +NOTES +----- +If a branch is associated with the working tree, 'HEAD' points to this +branch. When a new commit is created, the branch is updated to point +to the new commit. As a result, resolving 'HEAD' still gives the new +commit. + +If no branch is associated with the working tree (i.e. "detached HEAD" +as described in linkgit:git-checkout[1]), 'HEAD' records the object +name of the previous commit directly. When a new commit is created, it +will be updated to point to the new commit. + EXAMPLES -------- When recording your own work, the contents of modified files in -- 2.20.1.682.gd5861c6d90