On Tue, Aug 28, 2018 at 1:33 PM Derrick Stolee via GitGitGadget <gitgitgadget@xxxxxxxxx> wrote: > > From: Derrick Stolee <dstolee@xxxxxxxxxxxxx> > > The commit-graph feature is tested in isolation by > t5318-commit-graph.sh and t6600-test-reach.sh, but there are many > more interesting scenarios involving commit walks. Many of these > scenarios are covered by the existing test suite, but we need to > maintain coverage when the optional commit-graph structure is not > present. > > To allow running the full test suite with the commit-graph present, > add a new test environment variable, GIT_TEST_COMMIT_GRAPH. Similar > to GIT_TEST_SPLIT_INDEX, this variable makes every Git command try > to load the commit-graph when parsing commits, and writes the > commit-graph file after every 'git commit' command. > > There are a few tests that rely on commits not existing in > pack-files to trigger important events, so manually set > GIT_TEST_COMMIT_GRAPH to false for the necessary commands. So the plan is to turn on the commit graph for the whole test suite excluding these selected tests? > diff --git a/t/t0410-partial-clone.sh b/t/t0410-partial-clone.sh > index 4984ca583d..73d5284a91 100755 > --- a/t/t0410-partial-clone.sh > +++ b/t/t0410-partial-clone.sh > @@ -181,7 +181,7 @@ test_expect_success 'rev-list stops traversal at missing and promised commit' ' > > git -C repo config core.repositoryformatversion 1 && > git -C repo config extensions.partialclone "arbitrary string" && > - git -C repo rev-list --exclude-promisor-objects --objects bar >out && > + GIT_TEST_COMMIT_GRAPH=0 git -C repo rev-list --exclude-promisor-objects --objects bar >out && > + GIT_TEST_COMMIT_GRAPH=0 && > + test_must_fail git merge -m final G This could go on the same line without the && in between, setting the variable as a prefix.