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

Re: [PATCH v2 3/3] ci: stop linking built-ins to the dashed versions

From
SZEDER Gábor <szeder.dev@gmail.com>
Date
Aug 25, 2020, 13:47 UTC
Message-ID
<20200825134714.GC25052@szeder.dev>
In-Reply-To
<ea23ba5e269305b660a1722254e2a933c14e5b57.1598283480.git.gitgitgadget@gmail.com>
On Mon, Aug 24, 2020 at 03:38:00PM +0000, Johannes Schindelin via GitGitGadget wrote:
Show 15 quoted lines
> From: Johannes Schindelin <johannes.schindelin@gmx.de>
> 
> Originally, all of Git's subcommands were implemented in their own
> executable/script, using the naming scheme `git-<command-name>`. When
> more and more functionality was turned into built-in commands (i.e. the
> `git` executable could run them without spawning a separate process),
> for backwards-compatibility, we hard-link the `git` executable to
> `git-<built-in>` for every built-in.
> 
> This backwards-compatibility was needed to support scripts that called
> the dashed form, even if we deprecated that a _long_ time ago.
> 
> For that reason, we just introduced a Makefile knob to skip linking
> them. TO make sure that this keeps working, teach the CI
> (and PR) builds to skip generating those hard-links.

I'm afraid I don't understand this patch or the previous one (or both?). So this new Makefile knob stops hard-linking the dashed builtins _during 'make install'_, but it doesn't affect how Git is built by the default target. And our CI jobs only build Git by the default target, but don't run 'make install', so setting SKIP_DASHED_BUILT_INS wouldn't have any affect anyway.

Show 15 quoted lines
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
>  ci/run-build-and-tests.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/ci/run-build-and-tests.sh b/ci/run-build-and-tests.sh
> index 6c27b886b8..1df9402c3b 100755
> --- a/ci/run-build-and-tests.sh
> +++ b/ci/run-build-and-tests.sh
> @@ -10,7 +10,7 @@ windows*) cmd //c mklink //j t\\.prove "$(cygpath -aw "$cache_dir/.prove")";;
>  *) ln -s "$cache_dir/.prove" t/.prove;;
>  esac
>  
> -make
> +make SKIP_DASHED_BUILT_INS=YesPlease

Note that the CI jobs executed in containers (Linux32 and linux-musl) don't use this 'ci/run-build-and-tests.sh' script, so they won't set SKIP_DASHED_BUILT_INS. I suppose that's unintentional, because it wasn't mentioned in the commit message.

Show 5 quoted lines
>  case "$jobname" in
>  linux-gcc)
>  	make test
> -- 
> gitgitgadget
Previous: Johannes SchindelinNext: Junio C Hamano
Message 25 of 50 in “Optionally skip linking/copying the built-ins”
  1. 0/3 Optionally skip linking/copying the built-insJohannes Schindelin, Aug 17, 2020
  2. 2/3 Optionally skip linking/copying the built-insJohannes Schindelin, Aug 17, 2020
  3. Junio C HamanoAug 17, 2020
  4. Johannes SchindelinAug 24, 2020
  5. 1/3 msvc: copy the correct `.pdb` files in the Makefile target `install`Johannes Schindelin, Aug 17, 2020
  6. Jeff KingAug 17, 2020
  7. Johannes SchindelinAug 17, 2020
  8. Jeff KingAug 17, 2020
  9. Johannes SchindelinAug 18, 2020
  10. 3/3 ci: stop linking built-ins to the dashed versionsJohannes Schindelin, Aug 17, 2020
  11. Junio C HamanoAug 17, 2020
  12. Johannes SchindelinAug 17, 2020
  13. Junio C HamanoAug 17, 2020
  14. Johannes SchindelinAug 24, 2020
  15. Junio C HamanoAug 24, 2020
  16. Johannes SchindelinAug 25, 2020
  17. Junio C HamanoAug 25, 2020
  18. 0/3 Optionally skip linking/copying the built-insJohannes Schindelin via GitGitGadget, Aug 24, 2020
  19. 2/3 Optionally skip linking/copying the built-insJohannes Schindelin via GitGitGadget, Aug 24, 2020
  20. Junio C HamanoAug 24, 2020
  21. Johannes SchindelinAug 25, 2020
  22. 3/3 ci: stop linking built-ins to the dashed versionsJohannes Schindelin via GitGitGadget, Aug 24, 2020
  23. Junio C HamanoAug 24, 2020
  24. Johannes SchindelinAug 25, 2020
  25. SZEDER GáborAug 25, 2020
  26. Junio C HamanoAug 25, 2020
  27. Johannes SchindelinAug 26, 2020
  28. Junio C HamanoAug 26, 2020
  29. Junio C HamanoAug 26, 2020
  30. Johannes SchindelinSep 2, 2020
  31. Junio C HamanoSep 2, 2020
  32. SZEDER GáborAug 27, 2020
  33. 1/3 msvc: copy the correct `.pdb` files in the Makefile target `install`Johannes Schindelin via GitGitGadget, Aug 24, 2020
  34. Junio C HamanoAug 24, 2020
  35. Jeff KingAug 24, 2020
  36. Junio C HamanoAug 24, 2020
  37. 0/3 Optionally skip linking/copying the built-insJohannes Schindelin via GitGitGadget, Aug 26, 2020
  38. 1/3 msvc: copy the correct `.pdb` files in the Makefile target `install`Johannes Schindelin via GitGitGadget, Aug 26, 2020
  39. 3/3 ci: stop linking built-ins to the dashed versionsJohannes Schindelin via GitGitGadget, Aug 26, 2020
  40. SZEDER GáborSep 3, 2020
  41. Johannes SchindelinSep 8, 2020
  42. Junio C HamanoSep 8, 2020
  43. SZEDER GáborSep 8, 2020
  44. 2/3 Optionally skip linking/copying the built-insJohannes Schindelin via GitGitGadget, Aug 26, 2020
  45. Junio C HamanoAug 26, 2020
  46. 0/3 Optionally skip linking/copying the built-insJohannes Schindelin via GitGitGadget, Sep 21, 2020
  47. 1/3 msvc: copy the correct `.pdb` files in the Makefile target `install`Johannes Schindelin via GitGitGadget, Sep 21, 2020
  48. 3/3 ci: stop linking built-ins to the dashed versionsJohannes Schindelin via GitGitGadget, Sep 21, 2020
  49. Junio C HamanoSep 21, 2020
  50. 2/3 Optionally skip linking/copying the built-insJohannes Schindelin via GitGitGadget, Sep 21, 2020

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.