git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* git reflog write does not pick up user.name and user.email from config
@ 2025-09-29 11:11 Michael
  2025-09-29 23:57 ` Patrick Steinhardt
  0 siblings, 1 reply; 9+ messages in thread
From: Michael @ 2025-09-29 11:11 UTC (permalink / raw)
  To: git; +Cc: ps

Hi there!

I've been playing around with a toy project (an interactive step by step
git tutorial that is just a repo) where I have been creating a reflog
manually so far. I was happy to see the new `reflog write` feature and
wanted to integrate it.

When comparing the results of my hand made reflog with the new
`git reflog write` result I found some differences: It does not seem to
pick up the "user.name" and "user.email" from the local git config.

Example:

```bash
git init example && cd example
git config --local user.name "C O Mitter"
git config --local user.email "committer@example.com"

message="hi"
oid="0000000000000000000000000000000000000000"

# Setting env vars works as expected
GIT_COMMITTER_NAME="$(git config --get user.name)" \
  GIT_COMMITTER_EMAIL="$(git config --get user.email)" \
  git reflog write "refs/test_vars" "$oid" "$oid" "$message"

# Picking up the information from the local config does not work
unset GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL
git reflog write "refs/test_no_vars" "$oid" "$oid" "$message"

# Since setting the env variables to the config value, no diff expected
# but:
diff .git/logs/refs/test_*
# 1c1
# < 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 Michael <michael@mycomp.local> 1759142076 +0200	hi
# ---
# > 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 C O Mitter <committer@example.com> 1759142076 +0200	hi
```

Intuitively I would expect these values to be picked up from the local
config instead of having to specify them in env variables. I didn't
expect it to fall back to some system values, instead of git config. Is
there a reason that this information is not used from the config? And if
yes, could you set some config, so that it gets picked up?

Unfortunately my ability to understand C is too limited to grasp how
`git_committer_info` works…

Thanks a lot for your work!
Michael


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2025-10-01 16:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-29 11:11 git reflog write does not pick up user.name and user.email from config Michael
2025-09-29 23:57 ` Patrick Steinhardt
2025-09-30  9:14   ` [PATCH] builtin/reflog: respect user config in "write" subcommand gitmlko
2025-09-30 11:26     ` Patrick Steinhardt
2025-09-30 14:37       ` [PATCH v2] " git
2025-09-30 17:13         ` Junio C Hamano
2025-09-30 19:53           ` [PATCH v3] " Michael Lohmann
2025-10-01  7:37             ` Patrick Steinhardt
2025-10-01 16:50               ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).