summaryrefslogtreecommitdiff
path: root/t/t3211-peel-ref.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-05-29 14:23:49 -0700
committerJunio C Hamano <gitster@pobox.com>2013-05-29 14:23:49 -0700
commit2f1ef15070a8664d3194d164f20283d78571e51c (patch)
treef38c2cbca2dc96840ae37e710c2c597f31dee2cd /t/t3211-peel-ref.sh
parentc51afbbd18f51beb186afdfa8bbe35c13a782df7 (diff)
parent9da31cb027aa5dac3d4914a88faa8830f0578c88 (diff)
downloadgit-2f1ef15070a8664d3194d164f20283d78571e51c.tar.gz
Merge branch 'mh/packed-refs-various'
Update reading and updating packed-refs file, correcting corner case bugs. * mh/packed-refs-various: (33 commits) refs: handle the main ref_cache specially refs: change do_for_each_*() functions to take ref_cache arguments pack_one_ref(): do some cheap tests before a more expensive one pack_one_ref(): use write_packed_entry() to do the writing pack_one_ref(): use function peel_entry() refs: inline function do_not_prune() pack_refs(): change to use do_for_each_entry() refs: use same lock_file object for both ref-packing functions pack_one_ref(): rename "path" parameter to "refname" pack-refs: merge code from pack-refs.{c,h} into refs.{c,h} pack-refs: rename handle_one_ref() to pack_one_ref() refs: extract a function write_packed_entry() repack_without_ref(): write peeled refs in the rewritten file t3211: demonstrate loss of peeled refs if a packed ref is deleted refs: change how packed refs are deleted search_ref_dir(): return an index rather than a pointer repack_without_ref(): silence errors for dangling packed refs t3210: test for spurious error messages for dangling packed refs refs: change the internal reference-iteration API refs: extract a function peel_entry() ...
Diffstat (limited to 't/t3211-peel-ref.sh')
-rwxr-xr-xt/t3211-peel-ref.sh9
1 files changed, 9 insertions, 0 deletions
diff --git a/t/t3211-peel-ref.sh b/t/t3211-peel-ref.sh
index d4d7792eae..3b7caca421 100755
--- a/t/t3211-peel-ref.sh
+++ b/t/t3211-peel-ref.sh
@@ -61,4 +61,13 @@ test_expect_success 'refs are peeled outside of refs/tags (old packed)' '
test_cmp expect actual
'
+test_expect_success 'peeled refs survive deletion of packed ref' '
+ git pack-refs --all &&
+ cp .git/packed-refs fully-peeled &&
+ git branch yadda &&
+ git pack-refs --all &&
+ git branch -d yadda &&
+ test_cmp fully-peeled .git/packed-refs
+'
+
test_done