{"thread":{"id":"62518","subject":"rev-list --ancestry-path with arg - bug or undocumented requirement","startedAt":"2024-11-19T21:53:30Z","lastAt":"2024-12-03T23:36:26Z","messageCount":12,"participants":["Kai Koponen","Elijah Newren","Junio C Hamano","Kristoffer Haugsbakk"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"507647","messageId":"CADYQcGpXm=RTEYyxqdSowQ4Vg9jmXuCzOOpd-TgDX8U814BReg@mail.gmail.com","threadId":"62518","inReplyTo":null,"subject":"rev-list --ancestry-path with arg - bug or undocumented requirement","fromName":"Kai Koponen","fromEmail":"kaikoponen@google.com","sentAt":"2024-11-19T21:53:16Z","receivedAt":"2024-11-19T21:53:30Z","isPatch":false,"sender":{"key":"kaikoponen@google.com","avatar":"https://avatars.githubusercontent.com/u/161378660?v=4"},"body":"What did you do before the bug happened? (Steps to reproduce your issue)\nCreate a toy repo with commits in the following structure:\nA - B - C\n     \\\n      D\n\nRun `git rev-list --ancestry-path=D A..C`.\n\nWhat did you expect to happen? (Expected behavior)\nCommits A and B should be listed.\n\nWhat happened instead? (Actual behavior)\nNo commits listed.\n\nWhat's different between what you expected and what actually happened?\n--ancestry-path with a commit arg seems to return 0 results unless the\nspecified commit is itself part of the range. The rev-list documentation\ndoes not mention that this is a requirement.\n\n\n[System Info]\ngit version:\ngit version 2.47.0.338.g60cca15819-goog\ncpu: x86_64\nno commit associated with this build\nsizeof-long: 8\nsizeof-size_t: 8\nshell-path: /bin/sh\nlibcurl: 8.8.0\nOpenSSL: OpenSSL 3.3.2 3 Sep 2024\nzlib: 1.3\ncompiler info: gnuc: 13.2\nlibc info: glibc: 2.38\n$SHELL (typically, interactive shell): /bin/bash\n\n\n[Enabled Hooks]\ncommit-msg\npre-commit\nprepare-commit-msg\n"},{"id":"507676","messageId":"CABPp-BE1C2izp1a0Xm8_0KU+kas8XKejDyix+AzXqbCOeVp2Dg@mail.gmail.com","threadId":"62518","inReplyTo":"CADYQcGpXm=RTEYyxqdSowQ4Vg9jmXuCzOOpd-TgDX8U814BReg@mail.gmail.com","subject":"Re: rev-list --ancestry-path with arg - bug or undocumented requirement","fromName":"Elijah Newren","fromEmail":"newren@gmail.com","sentAt":"2024-11-20T03:22:35Z","receivedAt":"2024-11-20T03:22:47Z","isPatch":false,"sender":{"key":"newren@gmail.com","avatar":"https://avatars.githubusercontent.com/u/5455730?v=4"},"body":"On Tue, Nov 19, 2024 at 1:53 PM Kai Koponen <kaikoponen@google.com> wrote:\n>\n> What did you do before the bug happened? (Steps to reproduce your issue)\n> Create a toy repo with commits in the following structure:\n> A - B - C\n>      \\\n>       D\n>\n> Run `git rev-list --ancestry-path=D A..C`.\n>\n> What did you expect to happen? (Expected behavior)\n> Commits A and B should be listed.\n>\n> What happened instead? (Actual behavior)\n> No commits listed.\n>\n> What's different between what you expected and what actually happened?\n> --ancestry-path with a commit arg seems to return 0 results unless the\n> specified commit is itself part of the range. The rev-list documentation\n> does not mention that this is a requirement.\n\nYeah, the commit message that introduced --ancestry-path=COMMIT did\ndocument this in its commit message (see\n257418c59040c13bfa839e01922e21833cda6a52257418c59040 (revision: allow\n--ancestry-path to take an argument, 2022-08-19)), and I think my\noriginal documentation patch was a little clearer on this point, but\nwhen Jonathan suggested an alternative for the documentation\n(https://lore.kernel.org/git/20220818222416.3567602-1-jonathantanmy@google.com/),\nI didn't think about someone attempting a commit outside the\nancestry-path as the argument.  My bad.\n\nBased on the references above, would you like to suggest a\ndocumentation patch to ensure this requirement is documented?\n"},{"id":"508456","messageId":"CADYQcGpyTL18N2t8t-HwafB8VEVbBt452fsE0yMBvRvZd1mbVw@mail.gmail.com","threadId":"62518","inReplyTo":"CABPp-BE1C2izp1a0Xm8_0KU+kas8XKejDyix+AzXqbCOeVp2Dg@mail.gmail.com","subject":"Re: rev-list --ancestry-path with arg - bug or undocumented requirement","fromName":"Kai Koponen","fromEmail":"kaikoponen@google.com","sentAt":"2024-12-02T19:45:17Z","receivedAt":"2024-12-02T19:45:32Z","isPatch":false,"sender":{"key":"kaikoponen@google.com","avatar":"https://avatars.githubusercontent.com/u/161378660?v=4"},"body":"From 447a2367f8d3318e69adccc1b011b0d04792e438 Mon Sep 17 00:00:00 2001\nFrom: Kai Koponen <kaikoponen@google.com>\nDate: Mon, 2 Dec 2024 19:32:25 +0000\nSubject: [PATCH] doc: mention rev-list --ancestry-path restrictions\n\nSigned-off-by: Kai Koponen <kaikopone@google.com>\n---\n Documentation/rev-list-options.txt | 13 +++++++------\n 1 file changed, 7 insertions(+), 6 deletions(-)\n\ndiff --git a/Documentation/rev-list-options.txt\nb/Documentation/rev-list-options.txt\nindex 00ccf68744..1c678294af 100644\n--- a/Documentation/rev-list-options.txt\n+++ b/Documentation/rev-list-options.txt\n@@ -412,12 +412,13 @@ Default mode::\n\n --ancestry-path[=<commit>]::\n  When given a range of commits to display (e.g. 'commit1..commit2'\n- or 'commit2 {caret}commit1'), only display commits in that range\n- that are ancestors of <commit>, descendants of <commit>, or\n- <commit> itself.  If no commit is specified, use 'commit1' (the\n- excluded part of the range) as <commit>.  Can be passed multiple\n- times; if so, a commit is included if it is any of the commits\n- given or if it is an ancestor or descendant of one of them.\n+ or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n+ only display commits in that range that are ancestors of <commit>,\n+ descendants of <commit>, or <commit> itself. If no commit is\n+ specified, use 'commit1' (the excluded part of the range) as\n+ <commit>.  Can be passed multiple times; if so, a commit is\n+ included if it is any of the commits given or if it is an ancestor\n+ or descendant of one of them.\n\n A more detailed explanation follows.\n\n-- \n2.47.0.338.g60cca15819-goog\n\nOn Tue, Nov 19, 2024 at 10:22 PM Elijah Newren <newren@gmail.com> wrote:\n>\n> On Tue, Nov 19, 2024 at 1:53 PM Kai Koponen <kaikoponen@google.com> wrote:\n> >\n> > What did you do before the bug happened? (Steps to reproduce your issue)\n> > Create a toy repo with commits in the following structure:\n> > A - B - C\n> >      \\\n> >       D\n> >\n> > Run `git rev-list --ancestry-path=D A..C`.\n> >\n> > What did you expect to happen? (Expected behavior)\n> > Commits A and B should be listed.\n> >\n> > What happened instead? (Actual behavior)\n> > No commits listed.\n> >\n> > What's different between what you expected and what actually happened?\n> > --ancestry-path with a commit arg seems to return 0 results unless the\n> > specified commit is itself part of the range. The rev-list documentation\n> > does not mention that this is a requirement.\n>\n> Yeah, the commit message that introduced --ancestry-path=COMMIT did\n> document this in its commit message (see\n> 257418c59040c13bfa839e01922e21833cda6a52257418c59040 (revision: allow\n> --ancestry-path to take an argument, 2022-08-19)), and I think my\n> original documentation patch was a little clearer on this point, but\n> when Jonathan suggested an alternative for the documentation\n> (https://lore.kernel.org/git/20220818222416.3567602-1-jonathantanmy@google.com/),\n> I didn't think about someone attempting a commit outside the\n> ancestry-path as the argument.  My bad.\n>\n> Based on the references above, would you like to suggest a\n> documentation patch to ensure this requirement is documented?\n"},{"id":"508483","messageId":"CABPp-BFzaf3K=LDk+Yp271M6hxdoPdW0G_T3OeNzfUEfkSCxuw@mail.gmail.com","threadId":"62518","inReplyTo":"CADYQcGpyTL18N2t8t-HwafB8VEVbBt452fsE0yMBvRvZd1mbVw@mail.gmail.com","subject":"Re: rev-list --ancestry-path with arg - bug or undocumented requirement","fromName":"Elijah Newren","fromEmail":"newren@gmail.com","sentAt":"2024-12-02T23:48:45Z","receivedAt":"2024-12-02T23:48:56Z","isPatch":false,"sender":{"key":"newren@gmail.com","avatar":"https://avatars.githubusercontent.com/u/5455730?v=4"},"body":"On Mon, Dec 2, 2024 at 11:45 AM Kai Koponen <kaikoponen@google.com> wrote:\n>\n> From 447a2367f8d3318e69adccc1b011b0d04792e438 Mon Sep 17 00:00:00 2001\n> From: Kai Koponen <kaikoponen@google.com>\n> Date: Mon, 2 Dec 2024 19:32:25 +0000\n> Subject: [PATCH] doc: mention rev-list --ancestry-path restrictions\n>\n> Signed-off-by: Kai Koponen <kaikopone@google.com>\n> ---\n>  Documentation/rev-list-options.txt | 13 +++++++------\n>  1 file changed, 7 insertions(+), 6 deletions(-)\n>\n> diff --git a/Documentation/rev-list-options.txt\n> b/Documentation/rev-list-options.txt\n> index 00ccf68744..1c678294af 100644\n> --- a/Documentation/rev-list-options.txt\n> +++ b/Documentation/rev-list-options.txt\n> @@ -412,12 +412,13 @@ Default mode::\n>\n>  --ancestry-path[=<commit>]::\n>   When given a range of commits to display (e.g. 'commit1..commit2'\n> - or 'commit2 {caret}commit1'), only display commits in that range\n> - that are ancestors of <commit>, descendants of <commit>, or\n> - <commit> itself.  If no commit is specified, use 'commit1' (the\n> - excluded part of the range) as <commit>.  Can be passed multiple\n> - times; if so, a commit is included if it is any of the commits\n> - given or if it is an ancestor or descendant of one of them.\n> + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> + only display commits in that range that are ancestors of <commit>,\n> + descendants of <commit>, or <commit> itself. If no commit is\n> + specified, use 'commit1' (the excluded part of the range) as\n> + <commit>.  Can be passed multiple times; if so, a commit is\n> + included if it is any of the commits given or if it is an ancestor\n> + or descendant of one of them.\n\nwhere the changes are the insertion of the phrase \"and a commit\n<commit> in that range,\", which nicely captures the restriction.\n\nThis patch looks good to me, thanks.\n\n>\n>  A more detailed explanation follows.\n>\n> --\n> 2.47.0.338.g60cca15819-goog\n"},{"id":"508487","messageId":"xmqqfrn5h8zj.fsf@gitster.g","threadId":"62518","inReplyTo":"CADYQcGpyTL18N2t8t-HwafB8VEVbBt452fsE0yMBvRvZd1mbVw@mail.gmail.com","subject":"Re: rev-list --ancestry-path with arg - bug or undocumented requirement","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-12-03T01:05:04Z","receivedAt":"2024-12-03T01:05:07Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Kai Koponen <kaikoponen@google.com> writes:\n\n> From 447a2367f8d3318e69adccc1b011b0d04792e438 Mon Sep 17 00:00:00 2001\n\nDo not include this line.\n\nIt is not a part of message, but merely added as a mark that a new\nmessage starts here in case there are two or more patch e-mail\nmessages in a file.  Since you are sending one patch per one e-mail\nmessage, you do not want it.\n\n> From: Kai Koponen <kaikoponen@google.com>\n\nLet your MUA have it on the From: header of your message; you do not\nwant this line when your MUA is configured correctly (and yours is;\nwe see From: header saying the same thing).\n\n> Date: Mon, 2 Dec 2024 19:32:25 +0000\n\nYou do not want this, either.  Your MUA records on Date: header the\ntime general public saw this change for the first time.\n\n> Subject: [PATCH] doc: mention rev-list --ancestry-path restrictions\n\nPut this in the e-mail header.  We add [PATCH] for a very good reason:\nmake it easier to find patches in the mailing list traffic.\n\n>\n\nHere is where you \"sell\" your changes by explaining why we are\nmaking this change (like \"existing text allows misinterpretation\nthat makes it sound like doing this and that are possible, which is\nnot true\").  Please do not leave it empty.\n\n> Signed-off-by: Kai Koponen <kaikopone@google.com>\n> ---\n>  Documentation/rev-list-options.txt | 13 +++++++------\n>  1 file changed, 7 insertions(+), 6 deletions(-)\n>\n> diff --git a/Documentation/rev-list-options.txt\n> b/Documentation/rev-list-options.txt\n> index 00ccf68744..1c678294af 100644\n> --- a/Documentation/rev-list-options.txt\n> +++ b/Documentation/rev-list-options.txt\n> @@ -412,12 +412,13 @@ Default mode::\n>\n>  --ancestry-path[=<commit>]::\n>   When given a range of commits to display (e.g. 'commit1..commit2'\n> - or 'commit2 {caret}commit1'), only display commits in that range\n> - that are ancestors of <commit>, descendants of <commit>, or\n> - <commit> itself.  If no commit is specified, use 'commit1' (the\n> - excluded part of the range) as <commit>.  Can be passed multiple\n> - times; if so, a commit is included if it is any of the commits\n> - given or if it is an ancestor or descendant of one of them.\n> + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> + only display commits in that range that are ancestors of <commit>,\n> + descendants of <commit>, or <commit> itself. If no commit is\n> + specified, use 'commit1' (the excluded part of the range) as\n> + <commit>.  Can be passed multiple times; if so, a commit is\n> + included if it is any of the commits given or if it is an ancestor\n> + or descendant of one of them.\n\nAs these files in Documentation/ are input to formatting programs,\nplease do not reflow the text unnecessarily so that what you changed\nstand out, instead of forcing reviewers to go word-by-word to sift\nthrough the changes to see what got really changed.\n\nThanks.\n"},{"id":"508546","messageId":"CADYQcGrD5KtM1sZQbccAtDaLmUXD8Gxv_nUWmapjfZm=TMq=Jw@mail.gmail.com","threadId":"62518","inReplyTo":"xmqqfrn5h8zj.fsf@gitster.g","subject":"[PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Kai Koponen","fromEmail":"kaikoponen@google.com","sentAt":"2024-12-03T17:14:34Z","receivedAt":"2024-12-03T17:14:49Z","isPatch":true,"sender":{"key":"kaikoponen@google.com","avatar":"https://avatars.githubusercontent.com/u/161378660?v=4"},"body":"The rev-list documentation doesn't mention that the given\ncommit must be in the specified commit range, leading\nto unexpected results.\n\nSigned-off-by: Kai Koponen <kaikopone@google.com>\n---\n Documentation/rev-list-options.txt | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/Documentation/rev-list-options.txt\nb/Documentation/rev-list-options.txt\nindex 00ccf68744..f0a46f9da5 100644\n--- a/Documentation/rev-list-options.txt\n+++ b/Documentation/rev-list-options.txt\n@@ -412,7 +412,7 @@ Default mode::\n\n --ancestry-path[=<commit>]::\n  When given a range of commits to display (e.g. 'commit1..commit2'\n- or 'commit2 {caret}commit1'), only display commits in that range\n+ or 'commit2 {caret}commit1'), and a commit <commit> in that range,\nonly display commits in that range\n  that are ancestors of <commit>, descendants of <commit>, or\n  <commit> itself.  If no commit is specified, use 'commit1' (the\n  excluded part of the range) as <commit>.  Can be passed multiple\n-- \n2.47.0.338.g60cca15819-goog\n\nOn Mon, Dec 2, 2024 at 8:05 PM Junio C Hamano <gitster@pobox.com> wrote:\n>\n> Kai Koponen <kaikoponen@google.com> writes:\n>\n> > From 447a2367f8d3318e69adccc1b011b0d04792e438 Mon Sep 17 00:00:00 2001\n>\n> Do not include this line.\n>\n> It is not a part of message, but merely added as a mark that a new\n> message starts here in case there are two or more patch e-mail\n> messages in a file.  Since you are sending one patch per one e-mail\n> message, you do not want it.\n>\n> > From: Kai Koponen <kaikoponen@google.com>\n>\n> Let your MUA have it on the From: header of your message; you do not\n> want this line when your MUA is configured correctly (and yours is;\n> we see From: header saying the same thing).\n>\n> > Date: Mon, 2 Dec 2024 19:32:25 +0000\n>\n> You do not want this, either.  Your MUA records on Date: header the\n> time general public saw this change for the first time.\n>\n> > Subject: [PATCH] doc: mention rev-list --ancestry-path restrictions\n>\n> Put this in the e-mail header.  We add [PATCH] for a very good reason:\n> make it easier to find patches in the mailing list traffic.\n>\n> >\n>\n> Here is where you \"sell\" your changes by explaining why we are\n> making this change (like \"existing text allows misinterpretation\n> that makes it sound like doing this and that are possible, which is\n> not true\").  Please do not leave it empty.\n>\n> > Signed-off-by: Kai Koponen <kaikopone@google.com>\n> > ---\n> >  Documentation/rev-list-options.txt | 13 +++++++------\n> >  1 file changed, 7 insertions(+), 6 deletions(-)\n> >\n> > diff --git a/Documentation/rev-list-options.txt\n> > b/Documentation/rev-list-options.txt\n> > index 00ccf68744..1c678294af 100644\n> > --- a/Documentation/rev-list-options.txt\n> > +++ b/Documentation/rev-list-options.txt\n> > @@ -412,12 +412,13 @@ Default mode::\n> >\n> >  --ancestry-path[=<commit>]::\n> >   When given a range of commits to display (e.g. 'commit1..commit2'\n> > - or 'commit2 {caret}commit1'), only display commits in that range\n> > - that are ancestors of <commit>, descendants of <commit>, or\n> > - <commit> itself.  If no commit is specified, use 'commit1' (the\n> > - excluded part of the range) as <commit>.  Can be passed multiple\n> > - times; if so, a commit is included if it is any of the commits\n> > - given or if it is an ancestor or descendant of one of them.\n> > + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> > + only display commits in that range that are ancestors of <commit>,\n> > + descendants of <commit>, or <commit> itself. If no commit is\n> > + specified, use 'commit1' (the excluded part of the range) as\n> > + <commit>.  Can be passed multiple times; if so, a commit is\n> > + included if it is any of the commits given or if it is an ancestor\n> > + or descendant of one of them.\n>\n> As these files in Documentation/ are input to formatting programs,\n> please do not reflow the text unnecessarily so that what you changed\n> stand out, instead of forcing reviewers to go word-by-word to sift\n> through the changes to see what got really changed.\n>\n> Thanks.\n"},{"id":"508548","messageId":"3bf4e4bc-c807-4bbb-8920-afba077413b4@app.fastmail.com","threadId":"62518","inReplyTo":"CADYQcGrD5KtM1sZQbccAtDaLmUXD8Gxv_nUWmapjfZm=TMq=Jw@mail.gmail.com","subject":"Re: [PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Kristoffer Haugsbakk","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2024-12-03T17:38:46Z","receivedAt":"2024-12-03T17:39:08Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"Hello Kai\n\nOn Tue, Dec 3, 2024, at 18:14, Kai Koponen wrote:\n> The rev-list documentation doesn't mention that the given\n> commit must be in the specified commit range, leading\n> to unexpected results.\n>\n> Signed-off-by: Kai Koponen <kaikopone@google.com>\n> ---\n>  Documentation/rev-list-options.txt | 2 +-\n>  1 file changed, 1 insertion(+), 1 deletion(-)\n\nI couldn’t apply this patch to `master` (cc01bad4a9f (The twelfth batch,\n2024-11-27)). It looks like it is because..\n\n>\n> diff --git a/Documentation/rev-list-options.txt\n> b/Documentation/rev-list-options.txt\n> index 00ccf68744..f0a46f9da5 100644\n> --- a/Documentation/rev-list-options.txt\n> +++ b/Documentation/rev-list-options.txt\n> @@ -412,7 +412,7 @@ Default mode::\n>\n>  --ancestry-path[=<commit>]::\n>   When given a range of commits to display (e.g. 'commit1..commit2'\n> - or 'commit2 {caret}commit1'), only display commits in that range\n> + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> only display commits in that range\n\nThis line got corrupted (linebreak).\n\nI see that you used git-send-email(1).  Did you edit the patch file\nmanually in order to add the quotation from Junio below? I’m guessing\nthe editor then broke that line since it is 102 characters when\ncombined/joined.  I guess you could use cat(1) instead.  I like to use\nGit Notes.  You can add a note to the commit and then use that default\nnamespace (commits) when making the patch.\n\n    git notes edit\n    git format-patch --notes=commits ...\n\nAlthough in this case it might be better to add a linebreak since the\nline gets so long. You can add one short line so that you don’t get the\nreflow-paragraph problem from the previous version:\n\n(these are with space indentation instead of tabs)\n\n     --ancestry-path[=<commit>]::\n            When given a range of commits to display (e.g. 'commit1..commit2'\n    -       or 'commit2 {caret}commit1'), only display commits in that range\n    +       or 'commit2 {caret}commit1'), only display commits in that range,\n    +       and a commit <commit> in that range,\n            that are ancestors of <commit>, descendants of <commit>, or\n            <commit> itself.  If no commit is specified, use 'commit1' (the\n            excluded part of the range) as <commit>.  Can be passed multiple\n"},{"id":"508550","messageId":"CADYQcGrME0wDrhDu6HQsX2Vo7A3bPPr3Ooio3bBFcBg6XaHuYQ@mail.gmail.com","threadId":"62518","inReplyTo":"3bf4e4bc-c807-4bbb-8920-afba077413b4@app.fastmail.com","subject":"Re: [PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Kai Koponen","fromEmail":"kaikoponen@google.com","sentAt":"2024-12-03T17:59:11Z","receivedAt":"2024-12-03T17:59:25Z","isPatch":true,"sender":{"key":"kaikoponen@google.com","avatar":"https://avatars.githubusercontent.com/u/161378660?v=4"},"body":"Apologies, I made a mistake while copying the patch in manually from\nformat-patch; my git install doesn't have send-email available, I'll\nfix that.\n\nOn Tue, Dec 3, 2024 at 12:39 PM Kristoffer Haugsbakk\n<kristofferhaugsbakk@fastmail.com> wrote:\n>\n> Hello Kai\n>\n> On Tue, Dec 3, 2024, at 18:14, Kai Koponen wrote:\n> > The rev-list documentation doesn't mention that the given\n> > commit must be in the specified commit range, leading\n> > to unexpected results.\n> >\n> > Signed-off-by: Kai Koponen <kaikopone@google.com>\n> > ---\n> >  Documentation/rev-list-options.txt | 2 +-\n> >  1 file changed, 1 insertion(+), 1 deletion(-)\n>\n> I couldn’t apply this patch to `master` (cc01bad4a9f (The twelfth batch,\n> 2024-11-27)). It looks like it is because..\n>\n> >\n> > diff --git a/Documentation/rev-list-options.txt\n> > b/Documentation/rev-list-options.txt\n> > index 00ccf68744..f0a46f9da5 100644\n> > --- a/Documentation/rev-list-options.txt\n> > +++ b/Documentation/rev-list-options.txt\n> > @@ -412,7 +412,7 @@ Default mode::\n> >\n> >  --ancestry-path[=<commit>]::\n> >   When given a range of commits to display (e.g. 'commit1..commit2'\n> > - or 'commit2 {caret}commit1'), only display commits in that range\n> > + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> > only display commits in that range\n>\n> This line got corrupted (linebreak).\n>\n> I see that you used git-send-email(1).  Did you edit the patch file\n> manually in order to add the quotation from Junio below? I’m guessing\n> the editor then broke that line since it is 102 characters when\n> combined/joined.  I guess you could use cat(1) instead.  I like to use\n> Git Notes.  You can add a note to the commit and then use that default\n> namespace (commits) when making the patch.\n>\n>     git notes edit\n>     git format-patch --notes=commits ...\n>\n> Although in this case it might be better to add a linebreak since the\n> line gets so long. You can add one short line so that you don’t get the\n> reflow-paragraph problem from the previous version:\n>\n> (these are with space indentation instead of tabs)\n>\n>      --ancestry-path[=<commit>]::\n>             When given a range of commits to display (e.g. 'commit1..commit2'\n>     -       or 'commit2 {caret}commit1'), only display commits in that range\n>     +       or 'commit2 {caret}commit1'), only display commits in that range,\n>     +       and a commit <commit> in that range,\n>             that are ancestors of <commit>, descendants of <commit>, or\n>             <commit> itself.  If no commit is specified, use 'commit1' (the\n>             excluded part of the range) as <commit>.  Can be passed multiple\n"},{"id":"508557","messageId":"CADYQcGoTvGBbSyiA1ZuS4Vd=gai-rLa=Vke4fCfFrbERJmP1NA@mail.gmail.com","threadId":"62518","inReplyTo":"CADYQcGrME0wDrhDu6HQsX2Vo7A3bPPr3Ooio3bBFcBg6XaHuYQ@mail.gmail.com","subject":"Re: [PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Kai Koponen","fromEmail":"kaikoponen@google.com","sentAt":"2024-12-03T20:21:16Z","receivedAt":"2024-12-03T20:21:29Z","isPatch":true,"sender":{"key":"kaikoponen@google.com","avatar":"https://avatars.githubusercontent.com/u/161378660?v=4"},"body":"Re-trying via GitGitGadget at\nhttps://lore.kernel.org/git/pull.1838.git.git.1733257083739.gitgitgadget@gmail.com/\n\nOn Tue, Dec 3, 2024 at 12:59 PM Kai Koponen <kaikoponen@google.com> wrote:\n>\n> Apologies, I made a mistake while copying the patch in manually from\n> format-patch; my git install doesn't have send-email available, I'll\n> fix that.\n>\n> On Tue, Dec 3, 2024 at 12:39 PM Kristoffer Haugsbakk\n> <kristofferhaugsbakk@fastmail.com> wrote:\n> >\n> > Hello Kai\n> >\n> > On Tue, Dec 3, 2024, at 18:14, Kai Koponen wrote:\n> > > The rev-list documentation doesn't mention that the given\n> > > commit must be in the specified commit range, leading\n> > > to unexpected results.\n> > >\n> > > Signed-off-by: Kai Koponen <kaikopone@google.com>\n> > > ---\n> > >  Documentation/rev-list-options.txt | 2 +-\n> > >  1 file changed, 1 insertion(+), 1 deletion(-)\n> >\n> > I couldn’t apply this patch to `master` (cc01bad4a9f (The twelfth batch,\n> > 2024-11-27)). It looks like it is because..\n> >\n> > >\n> > > diff --git a/Documentation/rev-list-options.txt\n> > > b/Documentation/rev-list-options.txt\n> > > index 00ccf68744..f0a46f9da5 100644\n> > > --- a/Documentation/rev-list-options.txt\n> > > +++ b/Documentation/rev-list-options.txt\n> > > @@ -412,7 +412,7 @@ Default mode::\n> > >\n> > >  --ancestry-path[=<commit>]::\n> > >   When given a range of commits to display (e.g. 'commit1..commit2'\n> > > - or 'commit2 {caret}commit1'), only display commits in that range\n> > > + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> > > only display commits in that range\n> >\n> > This line got corrupted (linebreak).\n> >\n> > I see that you used git-send-email(1).  Did you edit the patch file\n> > manually in order to add the quotation from Junio below? I’m guessing\n> > the editor then broke that line since it is 102 characters when\n> > combined/joined.  I guess you could use cat(1) instead.  I like to use\n> > Git Notes.  You can add a note to the commit and then use that default\n> > namespace (commits) when making the patch.\n> >\n> >     git notes edit\n> >     git format-patch --notes=commits ...\n> >\n> > Although in this case it might be better to add a linebreak since the\n> > line gets so long. You can add one short line so that you don’t get the\n> > reflow-paragraph problem from the previous version:\n> >\n> > (these are with space indentation instead of tabs)\n> >\n> >      --ancestry-path[=<commit>]::\n> >             When given a range of commits to display (e.g. 'commit1..commit2'\n> >     -       or 'commit2 {caret}commit1'), only display commits in that range\n> >     +       or 'commit2 {caret}commit1'), only display commits in that range,\n> >     +       and a commit <commit> in that range,\n> >             that are ancestors of <commit>, descendants of <commit>, or\n> >             <commit> itself.  If no commit is specified, use 'commit1' (the\n> >             excluded part of the range) as <commit>.  Can be passed multiple\n"},{"id":"508582","messageId":"xmqqldww9won.fsf@gitster.g","threadId":"62518","inReplyTo":"CADYQcGrD5KtM1sZQbccAtDaLmUXD8Gxv_nUWmapjfZm=TMq=Jw@mail.gmail.com","subject":"Re: [PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-12-03T23:24:56Z","receivedAt":"2024-12-03T23:24:58Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Kai Koponen <kaikoponen@google.com> writes:\n\n> The rev-list documentation doesn't mention that the given\n> commit must be in the specified commit range, leading\n> to unexpected results.\n>\n> Signed-off-by: Kai Koponen <kaikopone@google.com>\n> ---\n>  Documentation/rev-list-options.txt | 2 +-\n>  1 file changed, 1 insertion(+), 1 deletion(-)\n>\n> diff --git a/Documentation/rev-list-options.txt\n> b/Documentation/rev-list-options.txt\n> index 00ccf68744..f0a46f9da5 100644\n> --- a/Documentation/rev-list-options.txt\n> +++ b/Documentation/rev-list-options.txt\n> @@ -412,7 +412,7 @@ Default mode::\n>\n>  --ancestry-path[=<commit>]::\n>   When given a range of commits to display (e.g. 'commit1..commit2'\n> - or 'commit2 {caret}commit1'), only display commits in that range\n> + or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> only display commits in that range\n>   that are ancestors of <commit>, descendants of <commit>, or\n>   <commit> itself.  If no commit is specified, use 'commit1' (the\n>   excluded part of the range) as <commit>.  Can be passed multiple\n\nThanks for accomodating my pickyness ;-)  This version reads very\nwell.\n\nWill queue.\n\n"},{"id":"508584","messageId":"xmqqa5dc9wa5.fsf@gitster.g","threadId":"62518","inReplyTo":"3bf4e4bc-c807-4bbb-8920-afba077413b4@app.fastmail.com","subject":"Re: [PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-12-03T23:33:38Z","receivedAt":"2024-12-03T23:33:40Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Kristoffer Haugsbakk\" <kristofferhaugsbakk@fastmail.com> writes:\n\n> Hello Kai\n>\n> I couldn’t apply this patch to `master` (cc01bad4a9f (The twelfth batch,\n> 2024-11-27)). It looks like it is because..\n\nyes it is heavily whitespace damaged.  Here is what I applied after\nmanually reconstructing.\n\n--- >8 ---\nFrom: Kai Koponen <kaikoponen@google.com>\nDate: Tue, 3 Dec 2024 12:14:34 -0500\nSubject: [PATCH] doc: mention rev-list --ancestry-path restrictions\n\nThe rev-list documentation doesn't mention that the given\ncommit must be in the specified commit range, leading\nto unexpected results.\n\nSigned-off-by: Kai Koponen <kaikopone@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n Documentation/rev-list-options.txt | 3 ++-\n 1 file changed, 2 insertions(+), 1 deletion(-)\n\ndiff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt\nindex 0d90d5b154..9d5243e0aa 100644\n--- a/Documentation/rev-list-options.txt\n+++ b/Documentation/rev-list-options.txt\n@@ -401,7 +401,8 @@ Default mode::\n \n --ancestry-path[=<commit>]::\n \tWhen given a range of commits to display (e.g. 'commit1..commit2'\n-\tor 'commit2 {caret}commit1'), only display commits in that range\n+\tor 'commit2 {caret}commit1'), and a commit <commit> in that range,\n+\tonly display commits in that range\n \tthat are ancestors of <commit>, descendants of <commit>, or\n \t<commit> itself.  If no commit is specified, use 'commit1' (the\n \texcluded part of the range) as <commit>.  Can be passed multiple\n-- \n2.47.1-529-gecd20ec0f1\n\n"},{"id":"508585","messageId":"CADYQcGo_F2STr4BGOz2bbx2yVkQEKZ0ziFOGvBB8x=mSyCgDUA@mail.gmail.com","threadId":"62518","inReplyTo":"xmqqa5dc9wa5.fsf@gitster.g","subject":"Re: [PATCH] doc: mention rev-list --ancestry-path restrictions","fromName":"Kai Koponen","fromEmail":"kaikoponen@google.com","sentAt":"2024-12-03T23:36:13Z","receivedAt":"2024-12-03T23:36:26Z","isPatch":true,"sender":{"key":"kaikoponen@google.com","avatar":"https://avatars.githubusercontent.com/u/161378660?v=4"},"body":"Thanks for fixing the mangling, pickiness is definitely called for a\nhuge project like this with lots of work on the maintainers. Wish\ngmail didn't eat tabs in plain text mode... the github app was easier\nto use than I expected though.\n\nOn Tue, Dec 3, 2024 at 6:33 PM Junio C Hamano <gitster@pobox.com> wrote:\n>\n> \"Kristoffer Haugsbakk\" <kristofferhaugsbakk@fastmail.com> writes:\n>\n> > Hello Kai\n> >\n> > I couldn’t apply this patch to `master` (cc01bad4a9f (The twelfth batch,\n> > 2024-11-27)). It looks like it is because..\n>\n> yes it is heavily whitespace damaged.  Here is what I applied after\n> manually reconstructing.\n>\n> --- >8 ---\n> From: Kai Koponen <kaikoponen@google.com>\n> Date: Tue, 3 Dec 2024 12:14:34 -0500\n> Subject: [PATCH] doc: mention rev-list --ancestry-path restrictions\n>\n> The rev-list documentation doesn't mention that the given\n> commit must be in the specified commit range, leading\n> to unexpected results.\n>\n> Signed-off-by: Kai Koponen <kaikopone@google.com>\n> Signed-off-by: Junio C Hamano <gitster@pobox.com>\n> ---\n>  Documentation/rev-list-options.txt | 3 ++-\n>  1 file changed, 2 insertions(+), 1 deletion(-)\n>\n> diff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt\n> index 0d90d5b154..9d5243e0aa 100644\n> --- a/Documentation/rev-list-options.txt\n> +++ b/Documentation/rev-list-options.txt\n> @@ -401,7 +401,8 @@ Default mode::\n>\n>  --ancestry-path[=<commit>]::\n>         When given a range of commits to display (e.g. 'commit1..commit2'\n> -       or 'commit2 {caret}commit1'), only display commits in that range\n> +       or 'commit2 {caret}commit1'), and a commit <commit> in that range,\n> +       only display commits in that range\n>         that are ancestors of <commit>, descendants of <commit>, or\n>         <commit> itself.  If no commit is specified, use 'commit1' (the\n>         excluded part of the range) as <commit>.  Can be passed multiple\n> --\n> 2.47.1-529-gecd20ec0f1\n>\n"}]}