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

Re: What's cooking in git.git (Nov 2021, #03; Tue, 9)

From
Emily Shaffer <emilyshaffer@google.com>
Date
Nov 11, 2021, 22:19 UTC
Message-ID
<YY2W6ESIxSz9lakK@google.com>
In-Reply-To
<xmqqy25wygek.fsf@gitster.g>
Once more, updates to submodule-UX-overhaul related work.
On Tue, Nov 09, 2021 at 04:59:31PM -0800, Junio C Hamano wrote:
Show 18 quoted lines
> --------------------------------------------------
> [Stalled]
> 
> * ar/submodule-update (2021-10-13) 9 commits
>  . submodule--helper: rename helper functions
>  . submodule--helper: remove unused helpers
>  . submodule: move core cmd_update() logic to C
>  . submodule--helper: run update using child process struct
>  . submodule--helper: allow setting superprefix for init_submodule()
>  . submodule--helper: refactor get_submodule_displaypath()
>  . submodule--helper: rename helpers for update-clone
>  . submodule--helper: get remote names from any repository
>  . submodule--helper: split up ensure_core_worktree()
> 
>  Rewrite of "git submodule update" in C.
> 
>  Kicked out of 'seen' to make room for es/superproject-aware-submodules
>  which is among the topics this topic stomps on.

There is some discussion on es/superproject-aware-submodules, and whether it is still needed. I think it is, but I'll say more downthread, instead of next to this topic.

Show 15 quoted lines
> --------------------------------------------------
> [Cooking]
> 
> * gc/remote-with-fewer-static-global-variables (2021-10-28) 6 commits
>  - remote: add struct repository parameter to external functions
>  - remote: die if branch is not found in repository
>  - remote: remove the_repository->remote_state from static methods
>  - remote: use remote_state parameter internally
>  - remote: move static variables into per-repository struct
>  - t5516: add test case for pushing remote refspecs
> 
>  Code clean-up to eventually allow information on remotes defined
>  for an arbitrary repository to be read.
> 
>  Will merge to 'next'?

What's still blocking this from being merged? Anything? Release schedule?

Show 9 quoted lines
> * js/branch-track-inherit (2021-10-18) 1 commit
>  - branch: add flags and config to inherit tracking
> 
>  "git -c branch.autosetupmerge=inherit branch new old" makes "new"
>  to have the same upstream as the "old" branch, instead of marking
>  "old" itself as its upstream.
> 
>  Under discussion.
>  cf. <87a6j6tbsv.fsf@gmgdl.gmail.com>
Got confirmation this week that Josh is actively working on the next reroll.
Show 21 quoted lines
> * ab/config-based-hooks-2 (2021-11-01) 18 commits
>  - run-command: remove old run_hook_{le,ve}() hook API
>  - receive-pack: convert push-to-checkout hook to hook.h
>  - read-cache: convert post-index-change to use hook.h
>  - commit: convert {pre-commit,prepare-commit-msg} hook to hook.h
>  - git-p4: use 'git hook' to run hooks
>  - send-email: use 'git hook run' for 'sendemail-validate'
>  - git hook run: add an --ignore-missing flag
>  - hooks: convert worktree 'post-checkout' hook to hook library
>  - hooks: convert non-worktree 'post-checkout' hook to hook library
>  - merge: convert post-merge to use hook.h
>  - am: convert applypatch-msg to use hook.h
>  - rebase: convert pre-rebase to use hook.h
>  - hook API: add a run_hooks_l() wrapper
>  - am: convert {pre,post}-applypatch to use hook.h
>  - gc: use hook library for pre-auto-gc hook
>  - hook API: add a run_hooks() wrapper
>  - hook: add 'run' subcommand
>  - Merge branch 'ab/config-based-hooks-1' into ab/config-based-hooks-2
> 
>  More "config-based hooks".

I think I owe another review, but as always with these topics, I wrote a lot of the code so I'm not sure how much I can really help. Other eyes appreciated.

Show 8 quoted lines
> * es/superproject-aware-submodules (2021-11-04) 4 commits
>  - submodule: record superproject gitdir during 'update'
>  - submodule: record superproject gitdir during absorbgitdirs
>  - introduce submodule.superprojectGitDir record
>  - t7400-submodule-basic: modernize inspect() helper
> 
>  A configuration variable in a submodule points at the location of
>  the superproject it is bound to (RFC).

To summarize the discussion from here: Ævar suggested this topic might not be necessary anymore, and that we should rely on in-process discovery of the superproject's gitdir. However, after some more thought, I think it's valuable to strive for a definitive way to tell "yes, I am a submodule" - and I'd like for this topic to be it. I'm planning a reroll (and an explanation in the cover letter), and to drop language referring to that as a "cache" (because it isn't a cheap version of an operation the submodule would be doing otherwise). I will also add another patch to demonstrate how we can use that new information as a point of truth, instead of a performance shim.

---

Jonathan Tan: WIP v2 Conditional config includes remotes based on remote URL https://lore.kernel.org/git/cover.1635527389.git.jonathantanmy%40google.com

Additional discussion ongoing, Jonathan is working on another reroll, with a substantially different implementation but same user-facing feature. I think this discussion can benefit from reviews with an open mind - this is another effort to solve "how can a team ship configs for anybody developing their project, in the least painful (to the user) way possible?" In other words, this is a spiritual successor to the "remote-suggested hooks" topic, in that we are still trying to solve the same problem.

 - Emily
Previous: Junio C HamanoNext: Emily Shaffer
Message 11 of 15 in “What's cooking in git.git (Nov 2021, #03; Tue, 9)”
  1. Junio C HamanoNov 10, 2021
  2. js/scalar, was Re: What's cooking in git.git (Nov 2021, #03; Tue, 9)Johannes Schindelin, Nov 10, 2021
  3. Ævar Arnfjörð BjarmasonNov 10, 2021
  4. Junio C HamanoNov 11, 2021
  5. Johannes SchindelinNov 12, 2021
  6. jc/fix-pull-ff-only-when-already-up-to-date, was Re: What's cooking in git.git (Nov 2021, #03; Tue, 9)Johannes Schindelin, Nov 10, 2021
  7. Junio C HamanoNov 10, 2021
  8. Alex HenrieNov 10, 2021
  9. Johannes SchindelinNov 10, 2021
  10. Junio C HamanoNov 10, 2021
  11. Emily ShafferNov 11, 2021
  12. Emily ShafferNov 11, 2021
  13. Junio C HamanoNov 11, 2021
  14. Glen ChooNov 11, 2021
  15. ab/config-based-hooks-2 etc. (was: What's cooking in git.git (Nov 2021, #03; Tue, 9))Ævar Arnfjörð Bjarmason, Nov 13, 2021

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.