diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2021-01-19 12:52:04 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-01-20 18:46:22 -0800 |
commit | 3cf5f221bec9cefcb472e71e2cf378aecbb6f33f (patch) | |
tree | 914f1a98eb6bc32762cf40d458f414d021b9d089 /help.c | |
parent | maintenance: set log.excludeDecoration durin prefetch (diff) | |
download | tgif-3cf5f221bec9cefcb472e71e2cf378aecbb6f33f.tar.xz |
t7900: clean up some broken refs
The tests for the 'prefetch' task create remotes and fetch refs into
'refs/prefetch/<remote>/' and tags into 'refs/tags/'. These tests use
the remotes to create objects not intended to be seen by the "local"
repository.
In that sense, the incrmental-repack tasks did not have these objects
and refs in mind. That test replaces the object directory with a
specific pack-file layout for testing the batch-size logic. However,
this causes some operations to start showing warnings such as:
error: refs/prefetch/remote1/one does not point to a valid object!
error: refs/tags/one does not point to a valid object!
This only shows up if you run the tests verbosely and watch the output.
It caught my eye and I _thought_ that there was a bug where 'git gc' or
'git repack' wouldn't check 'refs/prefetch/' before pruning objects.
That is incorrect. Those commands do handle 'refs/prefetch/' correctly.
All that is left is to clean up the tests in t7900-maintenance.sh to
remove these tags and refs that are not being repacked for the
incremental-repack tests. Use update-ref to ensure this works with all
ref backends.
Helped-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Reviewed-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'help.c')
0 files changed, 0 insertions, 0 deletions