The same happens with git rev-parse --git-comon-dir
and
git config a.a "hello"
(which might be ok, since the config file is not yet setup at this point...)
On Fri, 2024-09-20 at 12:07 +0200, Gabriel Nützi wrote:
Thank you for filling out a Git bug report!
Please answer the following questions to help us understand your issue.What did you do before the bug happened? (Steps to reproduce your
issue)I set
git config --global core.hooksPath ~/myhooks
and placed a
reference-transaction
hook in~/myhooks/reference-transaction
with the content:#!/usr/bin/env bash set -e echo "$GIT_DIR" git rev-parse --absolute-git-dir
then I ran
mkdir ~/test && cd test git init
What did you expect to happen? (Expected behavior)
The Git repo
~/test
should have been initialized (and the hook
reference-transaction
would have passed successfully.)What happened instead? (Actual behavior)
The hook
reference-transaction
crashes sincegit rev-parse -- absolute-git-dir
withfailed: not a git repository: ...
What's different between what you expected and what actually happened?
The documentation says that
git rev-parse --absolute-git-dir
inside
thereference-transaction
hooks read "$GIT_DIR" if defined (which is
defined!) so thereference-transaction
should have passed. I assume
that hooks should be executed on properly initialized repositories,
right? Therefore I do not understand whygit rev-parse --absolute-git- dir
fails -> Bug?Anything else you want to add:
This came up with
Githooks
hooks manager
https://github.com/gabyx/Githooks where we use this command
to locate the current Git dir...Please review the rest of the bug report below.
You can delete any lines you don't wish to share.[System Info]
git version:
git version 2.46.0
cpu: x86_64
no commit associated with this build
sizeof-long: 8
sizeof-size_t: 8
shell-path: /nix/store/izpf49b74i15pcr9708s3xdwyqs4jxwl-bash-
5.2p32/bin/bash
libcurl: 8.9.1
OpenSSL: OpenSSL 3.0.14 4 Jun 2024
zlib: 1.3.1
uname: Linux 6.6.45 #1-NixOS SMP PREEMPT_DYNAMIC Sun Aug 11 10:47:28
UTC 2024 x86_64
compiler info: gnuc: 13.3
libc info: glibc: 2.39
$SHELL (typically, interactive shell): /run/current-system/sw/bin/zsh
Attachment:
signature.asc
Description: This is a digitally signed message part