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

Re: [PATCH v2 0/8] git-submodule.sh: improve parsing of options

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 11, 2024, 00:02 UTC
Message-ID
<xmqqikrrjdds.fsf@gitster.g>
In-Reply-To
<CAOfFamkEmJgUUj8C_TGbjgKs35vSBzNCDpLvK+utqnTtxd5iHQ@mail.gmail.com>
Roy E <royeldar0@gmail.com> writes:
Show 7 quoted lines
>> I am assuming (but I don't use "git submodule" very often, so my
>> assumption may be way off) that there is no such variable we need to
>> pass, but if not, we may need to reconsider and use the "variable has
>> only value of the option" for at least some of them.
>
> Indeed, there aren't such variables; all of the options which take
> arguments have exactly one argument.
Just to make sure we are on the same page,
    --foo "hello world"

is an example of an option "foo" that takes exactly one argument, a string which happens to have a whitespace in it, and is an example for which "variable has the dash-dash option, equals, and its value" pattern would not work well.

If we pass an argument that is an end-user provided message or is a project controlled pathname, we are likely to be in the same situation.

If we can pass it as
    --foo="hello world"
then we are safe, as we can do
	foo="--foo=hello world"
	... later ...
	git cmd ${foo:+"$foo"}
Previous: Roy ENext: Roy E
Message 21 of 43 in “git-submodule.sh: improve parsing of options”
  1. 0/3 git-submodule.sh: improve parsing of optionsRoy Eldar, Dec 7, 2024
  2. 1/3 git-submodule.sh: make some variables booleanRoy Eldar, Dec 7, 2024
  3. Junio C HamanoDec 7, 2024
  4. Eric SunshineDec 8, 2024
  5. 2/3 git-submodule.sh: improve parsing of some long optionsRoy Eldar, Dec 7, 2024
  6. 3/3 git-submodule.sh: improve parsing of short optionsRoy Eldar, Dec 7, 2024
  7. Junio C HamanoDec 8, 2024
  8. Roy EDec 9, 2024
  9. 0/8 git-submodule.sh: improve parsing of optionsRoy Eldar, Dec 9, 2024
  10. 1/8 git-submodule.sh: make some variables booleanRoy Eldar, Dec 9, 2024
  11. 2/8 git-submodule.sh: improve parsing of some long optionsRoy Eldar, Dec 9, 2024
  12. 3/8 git-submodule.sh: improve parsing of short optionsRoy Eldar, Dec 9, 2024
  13. 4/8 git-submodule.sh: get rid of isnumberRoy Eldar, Dec 9, 2024
  14. 5/8 git-submodule.sh: get rid of unused variableRoy Eldar, Dec 9, 2024
  15. 6/8 git-submodule.sh: add some commentsRoy Eldar, Dec 9, 2024
  16. 7/8 git-submodule.sh: improve variables readabilityRoy Eldar, Dec 9, 2024
  17. 8/8 git-submodule.sh: rename some variablesRoy Eldar, Dec 9, 2024
  18. Junio C HamanoDec 9, 2024
  19. Junio C HamanoDec 10, 2024
  20. Roy EDec 10, 2024
  21. Junio C HamanoDec 11, 2024
  22. Roy EDec 11, 2024
  23. Junio C HamanoDec 11, 2024
  24. 0/7 git-submodule.sh: improve parsing of optionsRoy Eldar, Dec 10, 2024
  25. 1/7 git-submodule.sh: improve parsing of some long optionsRoy Eldar, Dec 10, 2024
  26. 2/7 git-submodule.sh: improve parsing of short optionsRoy Eldar, Dec 10, 2024
  27. 3/7 git-submodule.sh: get rid of isnumberRoy Eldar, Dec 10, 2024
  28. 4/7 git-submodule.sh: get rid of unused variableRoy Eldar, Dec 10, 2024
  29. 5/7 git-submodule.sh: add some commentsRoy Eldar, Dec 10, 2024
  30. 6/7 git-submodule.sh: improve variables readabilityRoy Eldar, Dec 10, 2024
  31. Junio C HamanoDec 11, 2024
  32. Roy EDec 11, 2024
  33. Đoàn Trần Công DanhDec 11, 2024
  34. Junio C HamanoDec 11, 2024
  35. 7/7 git-submodule.sh: rename some variablesRoy Eldar, Dec 10, 2024
  36. 0/7 git-submodule.sh: improve parsing of optionsRoy Eldar, Dec 11, 2024
  37. 1/7 git-submodule.sh: improve parsing of some long optionsRoy Eldar, Dec 11, 2024
  38. 2/7 git-submodule.sh: improve parsing of short optionsRoy Eldar, Dec 11, 2024
  39. 3/7 git-submodule.sh: get rid of isnumberRoy Eldar, Dec 11, 2024
  40. 4/7 git-submodule.sh: get rid of unused variableRoy Eldar, Dec 11, 2024
  41. 5/7 git-submodule.sh: add some commentsRoy Eldar, Dec 11, 2024
  42. 6/7 git-submodule.sh: improve variables readabilityRoy Eldar, Dec 11, 2024
  43. 7/7 git-submodule.sh: rename some variablesRoy Eldar, Dec 11, 2024

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.