Subject: Re: [PATCH] packed_ref_store: handle a packed-refs file that is a symlink

From: Ævar Arnfjörð Bjarmason <[email-masked]>
Date: Mon, 31 May 2021 16:18:46 +0200

On Wed, Jul 26 2017, Michael Haggerty wrote:

> [...]
> +test_expect_success 'pack symlinked packed-refs' '
> +	# First make sure that symlinking works when reading:
> +	git update-ref refs/heads/loosy refs/heads/master &&
> +	git for-each-ref >all-refs-before &&
> +	mv .git/packed-refs .git/my-deviant-packed-refs &&
> +	ln -s my-deviant-packed-refs .git/packed-refs &&
> +	git for-each-ref >all-refs-linked &&
> +	test_cmp all-refs-before all-refs-linked &&
> +	git pack-refs --all --prune &&
> +	git for-each-ref >all-refs-packed &&
> +	test_cmp all-refs-before all-refs-packed &&
> +	test -h .git/packed-refs &&
> +	test "$(readlink .git/packed-refs)" = "my-deviant-packed-refs"
> +'

FWIW this broke tests on AIX because we can't assume readlink(1) exists
at all. See d2addc3b96 (t7800: readlink may not be available,
2016-05-31) for a workaround.