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

[PATCH v3 00/22] Prepare tests for reftable backend

From
Han-Wen Nienhuys via GitGitGadget <gitgitgadget@gmail.com>
Date
May 31, 2021, 16:56 UTC
Message-ID
<pull.1008.v3.git.git.1622480197.gitgitgadget@gmail.com>
In-Reply-To
<pull.1008.v2.git.git.1619519903.gitgitgadget@gmail.com>
Rewrites some tests to avoid direct filesystem access.

Introduces the test prereq REFFILES to mark other tests that depend on specifics of the files ref backend.

changes in v3 (relative to v2 from Apr 27)
 * address avarab's feedback.
Han-Wen Nienhuys (22):
  t4202: split testcase for invalid HEAD symref and HEAD hash
  t/helper/ref-store: initialize oid in resolve-ref
  t9300: check ref existence using test-helper rather than a file system
    check
  t5601: read HEAD using rev-parse
  t1401: use tar to snapshot and restore repo state
  t1401-symbolic-ref: avoid direct filesystem access
  t1413: use tar to save and restore entire .git directory
  t1301: fix typo in error message
  t5000: reformat indentation to the latest fashion
  t5000: inspect HEAD using git-rev-parse
  t7003: use rev-parse rather than FS inspection
  t5304: restyle: trim empty lines, drop ':' before >
  t5304: use "reflog expire --all" to clear the reflog
  test-lib: provide test prereq REFFILES
  t1407: require REFFILES for for_each_reflog test
  t1414: mark corruption test with REFFILES
  t2017: mark --orphan/logAllRefUpdates=false test as REFFILES
  t1404: mark tests that muck with .git directly as REFFILES.
  t7900: stop checking for loose refs
  t7003: check reflog existence only for REFFILES
  t4202: mark bogus head hash test with REFFILES
  t1415: set REFFILES for test specific to storage format
 t/README                      |   6 ++
 t/helper/test-ref-store.c     |   2 +-
 t/t1301-shared-repo.sh        |   2 +-
 t/t1401-symbolic-ref.sh       |  25 ++++---
 t/t1404-update-ref-errors.sh  |  30 ++++-----
 t/t1407-worktree-ref-store.sh |   9 ++-
 t/t1413-reflog-detach.sh      |   5 +-
 t/t1414-reflog-walk.sh        |   4 +-
 t/t1415-worktree-refs.sh      |   5 +-
 t/t2017-checkout-orphan.sh    |   2 +-
 t/t4202-log.sh                |  18 +++--
 t/t5000-tar-tree.sh           | 122 +++++++++++++++++++---------------
 t/t5304-prune.sh              |  83 +++++++----------------
 t/t5601-clone.sh              |   3 +-
 t/t7003-filter-branch.sh      |   7 +-
 t/t7900-maintenance.sh        |   2 -
 t/t9300-fast-import.sh        |   2 +-
 t/test-lib.sh                 |   2 +
 18 files changed, 170 insertions(+), 159 deletions(-)
base-commit: 4e42405f00ecbbee412846f48cb0253efeebe726
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1008%2Fhanwen%2Freffiles-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1008/hanwen/reffiles-v3
Pull-Request: https://github.com/git/git/pull/1008
Range-diff vs v2:
  1:  8ad4a35cda70 !  1:  6d875c6d7579 t4202: split testcase for invalid HEAD symref and HEAD hash
     @@ t/t4202-log.sh: test_expect_success 'log --graph --no-walk is forbidden' '
      -test_expect_success 'log diagnoses bogus HEAD' '
      +test_expect_success 'log diagnoses bogus HEAD hash' '
       	git init empty &&
     ++	test_when_finished "rm -rf empty" &&
       	test_must_fail git -C empty log 2>stderr &&
       	test_i18ngrep does.not.have.any.commits stderr &&
       	echo 1234abcd >empty/.git/refs/heads/main &&
     @@ t/t4202-log.sh: test_expect_success 'log --graph --no-walk is forbidden' '
      +	test_i18ngrep broken stderr'
      +
      +test_expect_success 'log diagnoses bogus HEAD symref' '
     -+	rm -rf empty &&
      +	git init empty &&
      +	git --git-dir empty/.git symbolic-ref HEAD refs/heads/invalid.lock &&
       	test_must_fail git -C empty log 2>stderr &&
  2:  e6222944a3eb !  2:  7c6ef1dcadfc t/helper/ref-store: initialize oid in resolve-ref
     @@ Commit message
          provides a reliable mechanism for accessing REFNAME, while avoiding the implicit
          resolution to refs/heads/REFNAME.
      
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
      
       ## t/helper/test-ref-store.c ##
     @@ t/helper/test-ref-store.c: static int cmd_for_each_ref(struct ref_store *refs, c
       static int cmd_resolve_ref(struct ref_store *refs, const char **argv)
       {
      -	struct object_id oid;
     -+	struct object_id oid = { 0 };
     ++	struct object_id oid = *null_oid();
       	const char *refname = notnull(*argv++, "refname");
       	int resolve_flags = arg_flags(*argv++, "resolve-flags");
       	int flags;
  3:  c5855b0caa73 !  3:  130099d30aba t9300: check ref existence using test-helper rather than a file system check
     @@ Commit message
          t9300: check ref existence using test-helper rather than a file system check
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t9300-fast-import.sh ##
      @@ t/t9300-fast-import.sh: test_expect_success 'B: accept branch name "TEMP_TAG"' '
  4:  369c968ab837 !  4:  c898982255c1 t5601: read HEAD using rev-parse
     @@ Commit message
          t5601: read HEAD using rev-parse
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t5601-clone.sh ##
      @@ t/t5601-clone.sh: test_expect_success 'clone from original with relative alternate' '
  -:  ------------ >  5:  12d43ff6a9e5 t1401: use tar to snapshot and restore repo state
  5:  248d9ffe7927 !  6:  f05817d80565 t1401-symbolic-ref: avoid direct filesystem access
     @@ Metadata
       ## Commit message ##
          t1401-symbolic-ref: avoid direct filesystem access
      
     +    Use symbolic-ref and rev-parse to inspect refs.
     +
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1401-symbolic-ref.sh ##
     -@@
     - test_description='basic symbolic-ref tests'
     - . ./test-lib.sh
     +@@ t/t1401-symbolic-ref.sh: test_expect_success 'setup' '
     + 	"$TAR" cf .git.tar .git/
     + '
       
     --# If the tests munging HEAD fail, they can break detection of
     --# the git repo, meaning that further tests will operate on
     --# the surrounding git repo instead of the trash directory.
     --reset_to_sane() {
     --	echo ref: refs/heads/foo >.git/HEAD
     --}
     --
      -test_expect_success 'symbolic-ref writes HEAD' '
     -+test_expect_success 'setup' '
     - 	git symbolic-ref HEAD refs/heads/foo &&
     +-	git symbolic-ref HEAD refs/heads/foo &&
      -	echo ref: refs/heads/foo >expect &&
      -	test_cmp expect .git/HEAD
     -+	test_commit file &&
     -+	"$TAR" cf .git.tar .git/
     - '
     - 
     +-'
     +-
      -test_expect_success 'symbolic-ref reads HEAD' '
      -	echo refs/heads/foo >expect &&
     -+reset_to_sane() {
     -+	rm -rf .git &&
     -+	"$TAR" xf .git.tar
     -+}
     -+
      +test_expect_success 'symbolic-ref read/write roundtrip' '
      +	git symbolic-ref HEAD refs/heads/read-write-roundtrip &&
      +	echo refs/heads/read-write-roundtrip >expect &&
  6:  e4e8fc1d4b4f !  7:  f6ab40c4e659 t1413: use tar to save and restore entire .git directory
     @@ Commit message
          This makes the test independent of the particulars of the storage formats.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1413-reflog-detach.sh ##
      @@ t/t1413-reflog-detach.sh: export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
  7:  89cc215c6014 !  8:  852bc0f3055d t1301: fix typo in error message
     @@ Commit message
          t1301: fix typo in error message
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1301-shared-repo.sh ##
      @@ t/t1301-shared-repo.sh: test_expect_success POSIXPERM 'git reflog expire honors core.sharedRepository' '
  8:  e67b90847c4e !  9:  e76c1e71bcb0 t5000: reformat indentation to the latest fashion
     @@ Commit message
          t5000: reformat indentation to the latest fashion
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t5000-tar-tree.sh ##
      @@ t/t5000-tar-tree.sh: test_expect_success 'setup' '
     @@ t/t5000-tar-tree.sh: test_expect_success 'setup' '
      +test_expect_success 'populate workdir' '
      +	mkdir a &&
      +	echo simple textfile >a/a &&
     -+	ten=0123456789 && hundred=$ten$ten$ten$ten$ten$ten$ten$ten$ten$ten &&
     -+	echo long filename >a/four$hundred &&
     ++	ten=0123456789 &&
     ++	hundred="$ten$ten$ten$ten$ten$ten$ten$ten$ten$ten" &&
     ++	echo long filename >"a/four$hundred" &&
      +	mkdir a/bin &&
      +	test-tool genrandom "frotz" 500000 >a/bin/sh &&
      +	printf "A\$Format:%s\$O" "$SUBSTFORMAT" >a/substfile1 &&
      +	printf "A not substituted O" >a/substfile2 &&
     -+	if test_have_prereq SYMLINKS; then
     ++	if test_have_prereq SYMLINKS
     ++	then
      +		ln -s a a/l1
      +	else
      +		printf %s a >a/l1
      +	fi &&
     -+	(p=long_path_to_a_file && cd a &&
     -+		for depth in 1 2 3 4 5; do mkdir $p && cd $p; done &&
     -+		echo text >file_with_long_path) &&
     ++	(
     ++		p=long_path_to_a_file &&
     ++		cd a &&
     ++		for depth in 1 2 3 4 5
     ++		do
     ++			mkdir $p &&
     ++			cd $p
     ++		done &&
     ++		echo text >file_with_long_path
     ++	) &&
      +	(cd a && find .) | sort >a.lst
      +'
       
     @@ t/t5000-tar-tree.sh: check_added with_untracked2 untracked one/untracked
      -    'git archive in a bare repo' \
      -    '(cd bare.git && git archive HEAD) >b3.tar'
      +test_expect_success 'git archive in a bare repo' '
     -+	(cd bare.git && git archive HEAD) >b3.tar
     ++	git --git-dir bare.git archive HEAD >b3.tar
      +'
       
      -test_expect_success \
  9:  d6072a70ae7d ! 10:  3e748285876b t5000: inspect HEAD using git-rev-parse
     @@ Commit message
          t5000: inspect HEAD using git-rev-parse
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t5000-tar-tree.sh ##
      @@ t/t5000-tar-tree.sh: test_expect_success 'validate file modification time' '
 10:  4bf1bf16bca3 ! 11:  a0605387d153 t7003: use rev-parse rather than FS inspection
     @@ Commit message
          t7003: use rev-parse rather than FS inspection
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t7003-filter-branch.sh ##
      @@ t/t7003-filter-branch.sh: test_expect_success '--prune-empty is able to prune root commit' '
 11:  6f15c15573af ! 12:  c12406ac9655 t5304: restyle: trim empty lines, drop ':' before >
     @@ Commit message
          t5304: restyle: trim empty lines, drop ':' before >
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t5304-prune.sh ##
      @@ t/t5304-prune.sh: add_blob() {
 12:  d8e80d83b6f8 ! 13:  9ede1b73d523 t5304: use "reflog expire --all" to clear the reflog
     @@ Metadata
       ## Commit message ##
          t5304: use "reflog expire --all" to clear the reflog
      
     -    This is more explicit, and reduces the depency between test functions. It also
     -    is more amenable to use with reftable, which has no concept of (non)existence of
     -    a reflog
     +    This test checks that unreachable objects are really removed. For the test to
     +    work, it has to ensure that no reflog retain any reachable objects.
     +
     +    Previously, it did this by manipulating the file system to remove reflog in the
     +    first test, and relying on git not updating the reflog if the relevant logfile
     +    doesn't exist in follow-up tests.
     +
     +    Now, explicitly clear the reflog using 'reflog expire'. This reduces the
     +    dependency between test functions. It also is more amenable to use with
     +    reftable, which has no concept of (non)-existence of a reflog
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t5304-prune.sh ##
      @@ t/t5304-prune.sh: test_expect_success 'prune: prune nonsense parameters' '
 13:  180847f4db14 ! 14:  8c552699fdbc test-lib: provide test prereq REFFILES
     @@ Commit message
          introducing the reftable storage backend.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/README ##
      @@ t/README: use these, and "test_set_prereq" for how to define your own.
 14:  f3307b62bfd7 ! 15:  57fcd175fa72 t1407: require REFFILES for for_each_reflog test
     @@ Commit message
          that apparently also doesn't cause reflogs to be created for pseudorefs
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1407-worktree-ref-store.sh ##
      @@ t/t1407-worktree-ref-store.sh: test_expect_success 'create_symref(FOO, refs/heads/main)' '
 15:  0d3b18cd3542 ! 16:  5fe2dc0efce9 t1414: mark corruption test with REFFILES
     @@ Metadata
       ## Commit message ##
          t1414: mark corruption test with REFFILES
      
     -    The reftable format guarantees that reflog entries are well-formed
     +    The test checks what happens if reflog and ref database disagree on the state of
     +    the latest commit. This seems to require accessing reflog storage directly.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1414-reflog-walk.sh ##
      @@ t/t1414-reflog-walk.sh: test_expect_success 'min/max age uses entry date to limit' '
     @@ t/t1414-reflog-walk.sh: test_expect_success 'min/max age uses entry date to limi
       '
       
      -test_expect_success 'walk prefers reflog to ref tip' '
     ++# Create a situation where the reflog and ref database disagree about the latest
     ++# state of HEAD.
      +test_expect_success REFFILES 'walk prefers reflog to ref tip' '
       	head=$(git rev-parse HEAD) &&
       	one=$(git rev-parse one) &&
 16:  b64e3e7ade15 ! 17:  496796d4e084 t2017: mark --orphan/logAllRefUpdates=false test as REFFILES
     @@ Commit message
          of the reflog file infeasible.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t2017-checkout-orphan.sh ##
      @@ t/t2017-checkout-orphan.sh: test_expect_success '--orphan makes reflog by default' '
 17:  fcc2b714dd50 ! 18:  c9d199b84499 t1404: mark tests that muck with .git directly as REFFILES.
     @@ Commit message
          locking scheme, none of which applies to reftable.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1404-update-ref-errors.sh ##
      @@ t/t1404-update-ref-errors.sh: test_expect_success 'one new ref is a simple prefix of another' '
 18:  ff3b67c84c41 <  -:  ------------ t7900: mark pack-refs tests as REFFILES
  -:  ------------ > 19:  6919c15e5f98 t7900: stop checking for loose refs
 19:  24dcf05d8fa6 ! 20:  73f89faa3b0a t7003: check reflog existence only for REFFILES
     @@ Commit message
          t7003: check reflog existence only for REFFILES
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t7003-filter-branch.sh ##
      @@ t/t7003-filter-branch.sh: test_expect_success '--prune-empty is able to prune entire branch' '
 20:  a33cdfda74ff ! 21:  ff86cf916943 t4202: mark bogus head hash test with REFFILES
     @@ Metadata
       ## Commit message ##
          t4202: mark bogus head hash test with REFFILES
      
     -    In reftable, hashes are correctly formed by design
     +    In reftable, hashes are correctly formed by design.
     +
     +    Split off test for git-log in empty repo.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t4202-log.sh ##
      @@ t/t4202-log.sh: test_expect_success 'log --graph --no-walk is forbidden' '
     @@ t/t4202-log.sh: test_expect_success 'log --graph --no-walk is forbidden' '
       '
       
      -test_expect_success 'log diagnoses bogus HEAD hash' '
     -+test_expect_success REFFILES 'log diagnoses bogus HEAD hash' '
     ++test_expect_success 'log on empty repo fails' '
       	git init empty &&
     + 	test_when_finished "rm -rf empty" &&
     + 	test_must_fail git -C empty log 2>stderr &&
     +-	test_i18ngrep does.not.have.any.commits stderr &&
     ++	test_i18ngrep does.not.have.any.commits stderr
     ++'
     ++
     ++test_expect_success REFFILES 'log diagnoses bogus HEAD hash' '
     ++	git init empty &&
     ++	test_when_finished "rm -rf empty" &&
     + 	echo 1234abcd >empty/.git/refs/heads/main &&
       	test_must_fail git -C empty log 2>stderr &&
     - 	test_i18ngrep does.not.have.any.commits stderr &&
     +-	test_i18ngrep broken stderr'
     ++	test_i18ngrep broken stderr
     ++'
     + 
     + test_expect_success 'log diagnoses bogus HEAD symref' '
     + 	git init empty &&
 21:  d7e5de8dba46 ! 22:  cbcbb2d78fc9 t1415: set REFFILES for test specific to storage format
     @@ Metadata
       ## Commit message ##
          t1415: set REFFILES for test specific to storage format
      
     -    Packing refs (and therefore checking that certain refs are not packed) is a
     -    property of the packed/loose ref storage. Add a comment to explain what the test
     -    checks.
     +    Packing refs (and therefore checking that certain refs are not packed)
     +    is a property of the packed/loose ref storage. Add a comment to explain
     +    what the test checks.
      
          Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
     +    Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
      
       ## t/t1415-worktree-refs.sh ##
      @@ t/t1415-worktree-refs.sh: test_expect_success 'setup' '
     @@ t/t1415-worktree-refs.sh: test_expect_success 'setup' '
       '
       
      -test_expect_success 'refs/worktree must not be packed' '
     -+# The 'packed-refs' files is stored directly in .git/. This means it is global
     ++# The 'packed-refs' file is stored directly in .git/. This means it is global
      +# to the repository, and can only contain refs that are shared across all
      +# worktrees.
      +test_expect_success REFFILES 'refs/worktree must not be packed' '
-- 
gitgitgadget
Previous: Han-Wen NienhuysNext: Han-Wen Nienhuys via GitGitGadget
Message 111 of 138 in “Prepare tests for reftable backend”
  1. 00/18 Prepare tests for reftable backendHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  2. 01/18 t4202: split testcase for invalid HEAD symref and HEAD hashHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  3. SZEDER GáborApr 19, 2021
  4. Han-Wen NienhuysApr 27, 2021
  5. 05/18 t1413: use tar to save and restore entire .git directoryHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  6. Junio C HamanoApr 20, 2021
  7. Han-Wen NienhuysApr 27, 2021
  8. 04/18 t1401-symbolic-ref: avoid direct filesystem accessHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  9. SZEDER GáborApr 19, 2021
  10. Han-Wen NienhuysApr 27, 2021
  11. Ævar Arnfjörð BjarmasonApr 21, 2021
  12. Han-Wen NienhuysApr 21, 2021
  13. SZEDER GáborApr 22, 2021
  14. Han-Wen NienhuysApr 22, 2021
  15. SZEDER GáborApr 23, 2021
  16. Han-Wen NienhuysApr 23, 2021
  17. Han-Wen NienhuysApr 23, 2021
  18. Ævar Arnfjörð BjarmasonApr 23, 2021
  19. Han-Wen NienhuysApr 26, 2021
  20. 03/18 t5601: read HEAD using rev-parseHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  21. 06/18 t1301: fix typo in error messageHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  22. 02/18 t9300: check ref existence using git-rev-parse rather than FS checkHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  23. Ævar Arnfjörð BjarmasonApr 21, 2021
  24. Han-Wen NienhuysApr 27, 2021
  25. 07/18 t5000: inspect HEAD using git-rev-parseHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  26. Ævar Arnfjörð BjarmasonApr 21, 2021
  27. Han-Wen NienhuysApr 27, 2021
  28. 09/18 t5304: use "reflog expire --all" to clear the reflogHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  29. Ævar Arnfjörð BjarmasonApr 21, 2021
  30. Han-Wen NienhuysApr 27, 2021
  31. 08/18 t7003: use rev-parse rather than FS inspectionHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  32. 10/18 test-lib: provide test prereq REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  33. Junio C HamanoApr 20, 2021
  34. Junio C HamanoApr 20, 2021
  35. Han-Wen NienhuysApr 26, 2021
  36. Han-Wen NienhuysApr 27, 2021
  37. 12/18 t1414: mark corruption test with REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  38. 11/18 t1407: require REFFILES for for_each_reflog testHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  39. Ævar Arnfjörð BjarmasonApr 21, 2021
  40. Han-Wen NienhuysApr 27, 2021
  41. 13/18 t2017: mark --orphan/logAllRefUpdates=false test as REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  42. Ævar Arnfjörð BjarmasonApr 21, 2021
  43. Han-Wen NienhuysApr 29, 2021
  44. 15/18 t7900: mark pack-refs tests as REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  45. Ævar Arnfjörð BjarmasonApr 21, 2021
  46. Han-Wen NienhuysApr 27, 2021
  47. 16/18 t7003: check reflog existence only for REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  48. Junio C HamanoApr 20, 2021
  49. Han-Wen NienhuysApr 26, 2021
  50. Han-Wen NienhuysApr 27, 2021
  51. Ævar Arnfjörð BjarmasonApr 21, 2021
  52. 14/18 t1404: mark tests that muck with .git directly as REFFILES.Han-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  53. Ævar Arnfjörð BjarmasonApr 21, 2021
  54. Han-Wen NienhuysApr 26, 2021
  55. 17/18 t4202: mark bogus head hash test with REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  56. Ævar Arnfjörð BjarmasonApr 21, 2021
  57. Han-Wen NienhuysApr 26, 2021
  58. 18/18 t1415: set REFFILES for test specific to storage formatHan-Wen Nienhuys via GitGitGadget, Apr 19, 2021
  59. Ævar Arnfjörð BjarmasonApr 21, 2021
  60. Han-Wen NienhuysApr 26, 2021
  61. 00/21 Prepare tests for reftable backendHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  62. 04/21 t5601: read HEAD using rev-parseHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  63. 01/21 t4202: split testcase for invalid HEAD symref and HEAD hashHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  64. Ævar Arnfjörð BjarmasonMay 20, 2021
  65. Han-Wen NienhuysMay 31, 2021
  66. 06/21 t1413: use tar to save and restore entire .git directoryHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  67. Ævar Arnfjörð BjarmasonMay 20, 2021
  68. Han-Wen NienhuysMay 31, 2021
  69. 05/21 t1401-symbolic-ref: avoid direct filesystem accessHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  70. Ævar Arnfjörð BjarmasonMay 20, 2021
  71. Han-Wen NienhuysMay 31, 2021
  72. 02/21 t/helper/ref-store: initialize oid in resolve-refHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  73. Ævar Arnfjörð BjarmasonMay 20, 2021
  74. Han-Wen NienhuysMay 31, 2021
  75. 03/21 t9300: check ref existence using test-helper rather than a file system checkHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  76. Ævar Arnfjörð BjarmasonMay 20, 2021
  77. 08/21 t5000: reformat indentation to the latest fashionHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  78. Ævar Arnfjörð BjarmasonMay 20, 2021
  79. Han-Wen NienhuysMay 31, 2021
  80. 09/21 t5000: inspect HEAD using git-rev-parseHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  81. 07/21 t1301: fix typo in error messageHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  82. 11/21 t5304: restyle: trim empty lines, drop ':' before >Han-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  83. 10/21 t7003: use rev-parse rather than FS inspectionHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  84. 12/21 t5304: use "reflog expire --all" to clear the reflogHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  85. Ævar Arnfjörð BjarmasonMay 20, 2021
  86. Han-Wen NienhuysMay 31, 2021
  87. 18/21 t7900: mark pack-refs tests as REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  88. Ævar Arnfjörð BjarmasonMay 20, 2021
  89. Han-Wen NienhuysMay 31, 2021
  90. 14/21 t1407: require REFFILES for for_each_reflog testHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  91. 13/21 test-lib: provide test prereq REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  92. 15/21 t1414: mark corruption test with REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  93. Ævar Arnfjörð BjarmasonMay 20, 2021
  94. 19/21 t7003: check reflog existence only for REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  95. Ævar Arnfjörð BjarmasonMay 20, 2021
  96. Han-Wen NienhuysMay 31, 2021
  97. 16/21 t2017: mark --orphan/logAllRefUpdates=false test as REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  98. Ævar Arnfjörð BjarmasonMay 20, 2021
  99. 17/21 t1404: mark tests that muck with .git directly as REFFILES.Han-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  100. 21/21 t1415: set REFFILES for test specific to storage formatHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  101. Ævar Arnfjörð BjarmasonMay 20, 2021
  102. Han-Wen NienhuysMay 31, 2021
  103. Ævar Arnfjörð BjarmasonMay 31, 2021
  104. 20/21 t4202: mark bogus head hash test with REFFILESHan-Wen Nienhuys via GitGitGadget, Apr 27, 2021
  105. Ævar Arnfjörð BjarmasonMay 20, 2021
  106. Han-Wen NienhuysMay 31, 2021
  107. Ævar Arnfjörð BjarmasonMay 20, 2021
  108. Han-Wen NienhuysMay 26, 2021
  109. Ævar Arnfjörð BjarmasonMay 26, 2021
  110. Han-Wen NienhuysMay 31, 2021
  111. 00/22 Prepare tests for reftable backendHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  112. 02/22 t/helper/ref-store: initialize oid in resolve-refHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  113. 01/22 t4202: split testcase for invalid HEAD symref and HEAD hashHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  114. 04/22 t5601: read HEAD using rev-parseHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  115. 03/22 t9300: check ref existence using test-helper rather than a file system checkHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  116. 05/22 t1401: use tar to snapshot and restore repo stateHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  117. 07/22 t1413: use tar to save and restore entire .git directoryHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  118. Bagas SanjayaJun 1, 2021
  119. Han-Wen NienhuysJun 1, 2021
  120. Junio C HamanoJun 1, 2021
  121. Han-Wen NienhuysJun 2, 2021
  122. 06/22 t1401-symbolic-ref: avoid direct filesystem accessHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  123. 08/22 t1301: fix typo in error messageHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  124. 09/22 t5000: reformat indentation to the latest fashionHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  125. 10/22 t5000: inspect HEAD using git-rev-parseHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  126. 11/22 t7003: use rev-parse rather than FS inspectionHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  127. 12/22 t5304: restyle: trim empty lines, drop ':' before >Han-Wen Nienhuys via GitGitGadget, May 31, 2021
  128. 15/22 t1407: require REFFILES for for_each_reflog testHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  129. 17/22 t2017: mark --orphan/logAllRefUpdates=false test as REFFILESHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  130. 14/22 test-lib: provide test prereq REFFILESHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  131. 18/22 t1404: mark tests that muck with .git directly as REFFILES.Han-Wen Nienhuys via GitGitGadget, May 31, 2021
  132. 16/22 t1414: mark corruption test with REFFILESHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  133. 21/22 t4202: mark bogus head hash test with REFFILESHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  134. 13/22 t5304: use "reflog expire --all" to clear the reflogHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  135. 19/22 t7900: stop checking for loose refsHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  136. 20/22 t7003: check reflog existence only for REFFILESHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  137. 22/22 t1415: set REFFILES for test specific to storage formatHan-Wen Nienhuys via GitGitGadget, May 31, 2021
  138. Ævar Arnfjörð BjarmasonMay 31, 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.