Re: [PATCH 3/3] range-diff(docs): explain how to specify commit ranges
- From
Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
- Date
- Jan 22, 2021, 18:20 UTC
- Message-ID
- <20210122182050.xyzkvlctb4kiin7a@pengutronix.de>
- In-Reply-To
- <041456b6e73b3a88097d0cc06056eb43d35d42c6.1611267638.git.gitgitgadget@gmail.com>
On Thu, Jan 21, 2021 at 10:20:38PM +0000, Johannes Schindelin via GitGitGadget wrote:
Show 32 quoted lines
> From: Johannes Schindelin <johannes.schindelin@gmx.de> > > There are three forms, depending whether the user specifies one, two or > three non-option arguments. We've never actually explained how this > works in the manual, so let's explain it. > > Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> > --- > Documentation/git-range-diff.txt | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/Documentation/git-range-diff.txt b/Documentation/git-range-diff.txt > index 9701c1e5fdd..76359baf26d 100644 > --- a/Documentation/git-range-diff.txt > +++ b/Documentation/git-range-diff.txt > @@ -28,6 +28,19 @@ Finally, the list of matching commits is shown in the order of the > second commit range, with unmatched commits being inserted just after > all of their ancestors have been shown. > > +There are three ways to specify the commit ranges: > + > +- `<range1> <range2>`: Either commit range can be of the form > + `<base>..<rev>`, `<rev>^!` or `<rev>^-<n>`. See `SPECIFYING RANGES` > + in linkgit:gitrevisions[7] for more details. > + > +- `<rev1>...<rev2>`. This resembles the symmetric ranges mentioned in > + the `SPECIFYING RANGES` section of linkgit:gitrevisions[7], and is > + equivalent to `<base>..<rev1> <base>..<rev2>` where `<base>` is the > + merge base as obtained via `git merge-base <rev1> <rev2>`. > + > +- `<base> <rev1> <rev2>`: This is equivalent to `<base>..<rev1> > + <base>..<rev2>`.
git-log takes a range, too. There you can specify a single rev (with the semantic to list all commits from this rev up (or down?) to the root). So <rev> means implicitly <rev>^∞..<rev> for git-log.
Does it make sense to implement this here, too? Maybe this even allows sharing some more code?
Best regards Uwe
-- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |