git-log.txt: include rev-list-description.txt

The `git log` synopsis mentions `<revision range>`, and the description
of this option links to gitrevisions(7), but a nice explanation of
how a revision range can be constructed from individual commits,
optionnally prefixed with `^`, also exists in `rev-list-description.txt`.

Include this description in the man page for `git log`.

Add Asciidoc 'ifdef's to `rev-list-description.txt` so that either `git
rev-list` or `git log` appears in the respective man pages.

Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Philippe Blain 2020-07-09 02:16:48 +00:00 committed by Junio C Hamano
parent 6be6b171a7
commit bea866587c
3 changed files with 27 additions and 0 deletions

View File

@ -15,6 +15,9 @@ DESCRIPTION
----------- -----------
Shows the commit logs. Shows the commit logs.
:git-log: 1
include::rev-list-description.txt[]
The command takes options applicable to the linkgit:git-rev-list[1] The command takes options applicable to the linkgit:git-rev-list[1]
command to control what is shown and how, and options applicable to command to control what is shown and how, and options applicable to
the linkgit:git-diff[1] command to control how the changes the linkgit:git-diff[1] command to control how the changes

View File

@ -14,6 +14,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
:git-rev-list: 1
include::rev-list-description.txt[] include::rev-list-description.txt[]
'rev-list' is a very essential Git command, since it 'rev-list' is a very essential Git command, since it

View File

@ -12,9 +12,16 @@ result.
Thus, the following command: Thus, the following command:
ifdef::git-rev-list[]
----------------------------------------------------------------------- -----------------------------------------------------------------------
$ git rev-list foo bar ^baz $ git rev-list foo bar ^baz
----------------------------------------------------------------------- -----------------------------------------------------------------------
endif::git-rev-list[]
ifdef::git-log[]
-----------------------------------------------------------------------
$ git log foo bar ^baz
-----------------------------------------------------------------------
endif::git-log[]
means "list all the commits which are reachable from 'foo' or 'bar', but means "list all the commits which are reachable from 'foo' or 'bar', but
not from 'baz'". not from 'baz'".
@ -23,16 +30,32 @@ A special notation "'<commit1>'..'<commit2>'" can be used as a
short-hand for "^'<commit1>' '<commit2>'". For example, either of short-hand for "^'<commit1>' '<commit2>'". For example, either of
the following may be used interchangeably: the following may be used interchangeably:
ifdef::git-rev-list[]
----------------------------------------------------------------------- -----------------------------------------------------------------------
$ git rev-list origin..HEAD $ git rev-list origin..HEAD
$ git rev-list HEAD ^origin $ git rev-list HEAD ^origin
----------------------------------------------------------------------- -----------------------------------------------------------------------
endif::git-rev-list[]
ifdef::git-log[]
-----------------------------------------------------------------------
$ git log origin..HEAD
$ git log HEAD ^origin
-----------------------------------------------------------------------
endif::git-log[]
Another special notation is "'<commit1>'...'<commit2>'" which is useful Another special notation is "'<commit1>'...'<commit2>'" which is useful
for merges. The resulting set of commits is the symmetric difference for merges. The resulting set of commits is the symmetric difference
between the two operands. The following two commands are equivalent: between the two operands. The following two commands are equivalent:
ifdef::git-rev-list[]
----------------------------------------------------------------------- -----------------------------------------------------------------------
$ git rev-list A B --not $(git merge-base --all A B) $ git rev-list A B --not $(git merge-base --all A B)
$ git rev-list A...B $ git rev-list A...B
----------------------------------------------------------------------- -----------------------------------------------------------------------
endif::git-rev-list[]
ifdef::git-log[]
-----------------------------------------------------------------------
$ git log A B --not $(git merge-base --all A B)
$ git log A...B
-----------------------------------------------------------------------
endif::git-log[]