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

Re: [PATCH 3/5] doc: stop calling root refs pseudorefs

From
Andy Koppe <andy.koppe@gmail.com>
Date
Nov 1, 2026, 23:44 UTC
Message-ID
<CAHWeT-aa=6WByd4U9BB-6mMMUAxPQCC5GhyM1WMSSVVatvN0Tw@mail.gmail.com>
In-Reply-To
<atsPwpbD3YqmBds_@pks.im>
On Fri, 23 Oct 2026 at 08:42, Patrick Steinhardt <ps@pks.im> wrote:
Show 31 quoted lines
> On Thu, Oct 22, 2026 at 10:28:51PM +0100, Andy Koppe wrote:
> > diff --git a/Documentation/git-update-ref.adoc b/Documentation/git-update-ref.adoc
> > index 37a5019a8b..c775334230 100644
> > --- a/Documentation/git-update-ref.adoc
> > +++ b/Documentation/git-update-ref.adoc
> > @@ -163,13 +163,12 @@ still see a subset of the modifications.
> >
> >  LOGGING UPDATES
> >  ---------------
> > -If config parameter "core.logAllRefUpdates" is true and the ref is one
> > -under "refs/heads/", "refs/remotes/", "refs/notes/", or a pseudoref
> > -like HEAD or ORIG_HEAD; or the file "$GIT_DIR/logs/<ref>" exists then
> > -`git update-ref` will append a line to the log file
> > -"$GIT_DIR/logs/<ref>" (dereferencing all symbolic refs before creating
> > -the log name) describing the change in ref value.  Log lines are
> > -formatted as:
> > +If config parameter "core.logAllRefUpdates" is true and the ref is
> > +HEAD or one under "refs/heads/", "refs/remotes/" or "refs/notes/", or
> > +if the file "$GIT_DIR/logs/<ref>" exists, then `git update-ref` will
>
> It's kind of hard to understand how the ANDs and ORs play together.
> Like, does the config parameter extend to all subsequent ORs? That's not
> really a new issue though.
>
> > +append a line to the log file "$GIT_DIR/logs/<ref>" (dereferencing all
>
> Also, this infomation about "$GIT_DIR/logs/<ref>" is out-of-date, as the
> reftable backend doesn't store its reflogs in there.
>
> I wonder whether we should maybe just stop explaining how
> "core.logAllRefUpdates" works and instead refer to git-config(1).

The whole LOGGING UPDATES section in git-update-ref(1) seems outdated as it assumes ref files and SHA-256, but I think that's out of scope of this patch series.

Show 20 quoted lines
> > diff --git a/Documentation/git-worktree.adoc b/Documentation/git-worktree.adoc
> > index e6e77252ab..f0eb6d4137 100644
> > --- a/Documentation/git-worktree.adoc
> > +++ b/Documentation/git-worktree.adoc
> > @@ -303,11 +303,10 @@ but others are specific to an individual worktree. One example is `HEAD`,
> >  which is different for each worktree. This section is about the sharing
> >  rules and how to access refs of one worktree from another.
> >
> > -In general, all pseudo refs are per-worktree and all refs starting with
> > -`refs/` are shared. Pseudo refs are ones like `HEAD` which are directly
> > -under `$GIT_DIR` instead of inside `$GIT_DIR/refs`. There are exceptions,
> > -however: refs inside `refs/bisect`, `refs/worktree` and `refs/rewritten` are
> > -not shared.
> > +In general, all root refs and pseudorefs are per-worktree and all refs
> > +starting with `refs/` are shared. There are exceptions, however: refs
> > +inside `refs/bisect`, `refs/worktree` and `refs/rewritten` are not
> > +shared.
>
> It might make sense to have a bulleted list here, same as I proposed in
> a preceding patch.
Yep. Done in v2.
Andy
Previous: Patrick SteinhardtNext: Andy Koppe
Message 11 of 34 in “root refs vs pseudorefs”
  1. 0/5 root refs vs pseudorefsAndy Koppe, Oct 22, 2026
  2. 1/5 doc: glossary: add root ref and clarify pseudorefsAndy Koppe, Oct 22, 2026
  3. Junio C HamanoOct 22, 2026
  4. Patrick SteinhardtOct 23, 2026
  5. Andy KoppeNov 1, 2026
  6. 2/5 doc: glossary: update per-worktree refsAndy Koppe, Oct 22, 2026
  7. Patrick SteinhardtOct 23, 2026
  8. Andy KoppeNov 1, 2026
  9. 3/5 doc: stop calling root refs pseudorefsAndy Koppe, Oct 22, 2026
  10. Patrick SteinhardtOct 23, 2026
  11. Andy KoppeNov 1, 2026
  12. 4/5 refs: stop calling root refs pseudorefsAndy Koppe, Oct 22, 2026
  13. Patrick SteinhardtOct 23, 2026
  14. Andy KoppeNov 1, 2026
  15. 5/5 t: stop calling root refs pseudorefsAndy Koppe, Oct 22, 2026
  16. Junio C HamanoOct 22, 2026
  17. Julia EvansOct 23, 2026
  18. Andy KoppeNov 1, 2026
  19. 0/5 root refs vs pseudorefsAndy Koppe, Nov 1, 2026
  20. Julia EvansNov 2, 2026
  21. Andy KoppeNov 2, 2026
  22. Julia EvansNov 2, 2026
  23. Andy KoppeNov 2, 2026
  24. Julia EvansNov 3, 2026
  25. Junio C HamanoNov 2, 2026
  26. 1/5 doc: glossary: add root ref and clarify pseudorefsAndy Koppe, Nov 1, 2026
  27. Patrick SteinhardtNov 3, 2026
  28. Junio C HamanoNov 3, 2026
  29. 2/5 doc: glossary: update per-worktree refsAndy Koppe, Nov 1, 2026
  30. Patrick SteinhardtNov 3, 2026
  31. 3/5 doc: stop calling root refs pseudorefsAndy Koppe, Nov 1, 2026
  32. Patrick SteinhardtNov 3, 2026
  33. 4/5 refs: stop calling root refs pseudorefsAndy Koppe, Nov 1, 2026
  34. 5/5 t: stop calling root refs pseudorefsAndy Koppe, Nov 1, 2026

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.