The commit-graph (and multi-pack-index) features are optional data
structures that can make Git operations faster. Since they are optional, we
do not enable them in most Git tests. The commit-graph is tested in
t5318-commit-graph.sh (and t6600-test-reach.sh in ds/reachable), but that
one script cannot cover the data shapes present in the rest of the test
suite.
This patch introduces a new test environment variable, GIT_TEST_COMMIT_GRAPH
. Similar to GIT_TEST_SPLIT_INDEX, it enables the commit-graph and writes it
with every git commit command. Thanks, Duy, for pointing out this direction
[1].
A few tests needed to be modified. These are the same tests that were
mentioned in my previous example patch [2].
When this merges down, I'll create a CI build in VSTS that runs the test
suite with this option enabled.
Thanks, -Stolee
[1]
https://public-inbox.org/git/CACsJy8CKnXVJYkKM_W=N=Vq-TVXf+YCqZP_uP7B-dN_6xddB=g@mail.gmail.com/
Re: [PATCH 0/9] multi-pack-index cleanups (Discussing test environment
variables)
[2]
https://public-inbox.org/git/20180718152244.45513-1-dstolee@microsoft.com/
[PATCH] DO-NOT-MERGE: write and read commit-graph always
Based-On: ds/commit-graph-with-grafts Cc: jnareb@gmail.com
Derrick Stolee (1):
commit-graph: define GIT_TEST_COMMIT_GRAPH
builtin/commit.c | 4 ++++
commit-graph.c | 5 +++--
commit-graph.h | 2 ++
t/README | 4 ++++
t/t0410-partial-clone.sh | 2 +-
t/t5307-pack-missing-commit.sh | 10 ++++++++--
t/t6011-rev-list-with-bad-commit.sh | 10 ++++++----
t/t6024-recursive-merge.sh | 9 ++++++---
8 files changed, 34 insertions(+), 12 deletions(-)
base-commit: 829a321569d8e8f2c582aef9f0c990df976ab842
Published-As: https://github.com/gitgitgadget/git/releases/tags/pr-26%2Fderrickstolee%2Fshallow%2Ftest-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-26/derrickstolee/shallow/test-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/26
--
gitgitgadget