git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 15/16] tag: implicitly supply --list given the -n option

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 21, 2017, 18:59 UTC
Message-ID
<xmqq37e6piae.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<20170321125901.10652-16-avarab@gmail.com>
Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:
Show 10 quoted lines
> Change the "tag" command to treat the "-n" invocation as a list-like
> option in addition to --contains, --points-at etc.
>
> Most of the work for this was done in my earlier "tag: Implicitly
> supply --list given another list-like option" commit, but I've split
> off this patch since it's more contentious. Now these will be
> synonymous:
>
>     git tag -n 100
>     git tag -n --list 100
Hmph.  I would understand if these meant the same thing:
    git tag -l -n 100
    git tag -l -n=100
    git tag -l -n100

with or without "-l". And accepting any of the above three without "-l" instead of rejecting is a very good change, I would think.

I however do not understand how accepting this:
    
    git tag -n --list 100

would be a good thing, as "100" an optional parameter to the "-n" option.

Show 12 quoted lines
> Whereas before the former would die. This doesn't technically
> introduce any more ambiguity than the aforementioned change applied to
> th other list-like options, but it does introduce the possibility for
> more confusion, since instead of the latter of these dying:
>
>     git tag -n100
>     git tag -n 100
>
> It now works entirely differently, i.e. invokes list mode with a
> filter for "100" as a pattern. I.e. it's synonymous with:
>
>     git tag -n --list 100

Ahhh, yuck. OK, so in "git tag -n --list 100", 100 does not have anything to do with the -n option. It is a pattern and -n specifies "just one line" by default.

Oh, boy, that is confusing.  While it is very logical.

Still I think it is OK as I can see why people who wanted to have '-n' in the first place may want

    git tag -n -l <pattern>
Thanks.
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 9 of 45 in “Various changes to the "tag" command & related”
  1. 00/16 Various changes to the "tag" command & relatedÆvar Arnfjörð Bjarmason, Mar 21, 2017
  2. 01/16 tag doc: move the description of --[no-]merged earlierÆvar Arnfjörð Bjarmason, Mar 21, 2017
  3. Junio C HamanoMar 21, 2017
  4. 03/16 tag doc: reword --[no-]merged to talk about commits, not tipsÆvar Arnfjörð Bjarmason, Mar 21, 2017
  5. 14/16 ref-filter: reflow recently changed branch/tag/for-each-ref docsÆvar Arnfjörð Bjarmason, Mar 21, 2017
  6. Junio C HamanoMar 21, 2017
  7. Ævar Arnfjörð BjarmasonMar 21, 2017
  8. 15/16 tag: implicitly supply --list given the -n optionÆvar Arnfjörð Bjarmason, Mar 21, 2017
  9. Junio C HamanoMar 21, 2017
  10. Ævar Arnfjörð BjarmasonMar 21, 2017
  11. Junio C HamanoMar 21, 2017
  12. Ævar Arnfjörð BjarmasonMar 21, 2017
  13. 13/16 ref-filter: add --no-contains option to tag/branch/for-each-refÆvar Arnfjörð Bjarmason, Mar 21, 2017
  14. Junio C HamanoMar 21, 2017
  15. Ævar Arnfjörð BjarmasonMar 21, 2017
  16. 02/16 tag doc: split up the --[no-]merged documentationÆvar Arnfjörð Bjarmason, Mar 21, 2017
  17. Junio C HamanoMar 21, 2017
  18. 12/16 tag: change --point-at to default to HEADÆvar Arnfjörð Bjarmason, Mar 21, 2017
  19. Junio C HamanoMar 21, 2017
  20. 06/16 tag: remove a TODO item from the test suiteÆvar Arnfjörð Bjarmason, Mar 21, 2017
  21. 04/16 ref-filter: make combining --merged & --no-merged an errorÆvar Arnfjörð Bjarmason, Mar 21, 2017
  22. 05/16 ref-filter: add test for --contains on a non-commitÆvar Arnfjörð Bjarmason, Mar 21, 2017
  23. Junio C HamanoMar 21, 2017
  24. 07/16 tag tests: fix a typo in a test descriptionÆvar Arnfjörð Bjarmason, Mar 21, 2017
  25. 08/16 for-each-ref: partly change <object> to <commit> in helpÆvar Arnfjörð Bjarmason, Mar 21, 2017
  26. Junio C HamanoMar 21, 2017
  27. Ævar Arnfjörð BjarmasonMar 21, 2017
  28. Junio C HamanoMar 21, 2017
  29. 09/16 tag: add more incompatibles mode testsÆvar Arnfjörð Bjarmason, Mar 21, 2017
  30. Junio C HamanoMar 21, 2017
  31. Ævar Arnfjörð BjarmasonMar 21, 2017
  32. 16/16 tag: add tests for --with and --withoutÆvar Arnfjörð Bjarmason, Mar 21, 2017
  33. 10/16 tag: change misleading --list <pattern> documentationÆvar Arnfjörð Bjarmason, Mar 21, 2017
  34. Junio C HamanoMar 21, 2017
  35. Ævar Arnfjörð BjarmasonMar 22, 2017
  36. Junio C HamanoMar 22, 2017
  37. Ævar Arnfjörð BjarmasonMar 22, 2017
  38. Junio C HamanoMar 22, 2017
  39. Jeff KingMar 22, 2017
  40. Ævar Arnfjörð BjarmasonMar 22, 2017
  41. Junio C HamanoMar 23, 2017
  42. Junio C HamanoMar 22, 2017
  43. 11/16 tag: implicitly supply --list given another list-like optionÆvar Arnfjörð Bjarmason, Mar 21, 2017
  44. Junio C HamanoMar 21, 2017
  45. Junio C HamanoMar 21, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.