git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / Atom feed
d4ae98847905a0ce715c6e9540347d0b80b7c34d blob 4292 bytes (raw)

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
 
#!/bin/sh

test_description='multi-pack-indexes'
. ./test-lib.sh

midx_read_expect() {
	NUM_PACKS=$1
	NUM_OBJECTS=$2
	cat >expect <<- EOF
	header: 4d494458 1 1 4 $NUM_PACKS
	chunks: pack_lookup pack_names oid_fanout oid_lookup
	num_objects: $NUM_OBJECTS
	packs:
	EOF
	if [ $NUM_PACKS -ge 1 ]
	then
		ls pack/ | grep idx | sort >> expect
	fi
	printf "object_dir: .\n" >>expect &&
	git midx read --object-dir=. >actual &&
	test_cmp expect actual
}

test_expect_success 'write midx with no packs' '
	git midx --object-dir=. write &&
	test_when_finished rm pack/multi-pack-index &&
	test_path_is_file pack/multi-pack-index &&
	midx_read_expect 0 0
'

test_expect_success 'create objects' '
	for i in `test_seq 1 5`
	do
		iii=$(printf '%03i' $i)
		test-tool genrandom "bar" 200 > wide_delta_$iii &&
		test-tool genrandom "baz $iii" 50 >> wide_delta_$iii &&
		test-tool genrandom "foo"$i 100 > deep_delta_$iii &&
		test-tool genrandom "foo"$(expr $i + 1) 100 >> deep_delta_$iii &&
		test-tool genrandom "foo"$(expr $i + 2) 100 >> deep_delta_$iii &&
		echo $iii >file_$iii &&
		test-tool genrandom "$iii" 8192 >>file_$iii &&
		git update-index --add file_$iii deep_delta_$iii wide_delta_$iii &&
		i=$(expr $i + 1) || return 1
	done &&
	{ echo 101 && test-tool genrandom 100 8192; } >file_101 &&
	git update-index --add file_101 &&
	tree=$(git write-tree) &&
	commit=$(git commit-tree $tree </dev/null) && {
	echo $tree &&
	git ls-tree $tree | sed -e "s/.* \\([0-9a-f]*\\)	.*/\\1/"
	} >obj-list &&
	git update-ref HEAD $commit
'

test_expect_success 'write midx with one v1 pack' '
	pack=$(git pack-objects --index-version=1 pack/test <obj-list) &&
	test_when_finished rm pack/test-$pack.pack pack/test-$pack.idx pack/multi-pack-index &&
	git midx --object-dir=. write &&
	midx_read_expect 1 17
'

test_expect_success 'write midx with one v2 pack' '
	pack=$(git pack-objects --index-version=2,0x40 pack/test <obj-list) &&
	test_when_finished rm pack/test-$pack.pack pack/test-$pack.idx &&
	git midx --object-dir=. write &&
	midx_read_expect 1 17
'

test_expect_success 'Add more objects' '
	for i in `test_seq 6 10`
	do
		iii=$(printf '%03i' $i)
		test-tool genrandom "bar" 200 > wide_delta_$iii &&
		test-tool genrandom "baz $iii" 50 >> wide_delta_$iii &&
		test-tool genrandom "foo"$i 100 > deep_delta_$iii &&
		test-tool genrandom "foo"$(expr $i + 1) 100 >> deep_delta_$iii &&
		test-tool genrandom "foo"$(expr $i + 2) 100 >> deep_delta_$iii &&
		echo $iii >file_$iii &&
		test-tool genrandom "$iii" 8192 >>file_$iii &&
		git update-index --add file_$iii deep_delta_$iii wide_delta_$iii &&
		i=$(expr $i + 1) || return 1
	done &&
	{ echo 101 && test-tool genrandom 100 8192; } >file_101 &&
	git update-index --add file_101 &&
	tree=$(git write-tree) &&
	commit=$(git commit-tree $tree -p HEAD</dev/null) && {
	echo $tree &&
	git ls-tree $tree | sed -e "s/.* \\([0-9a-f]*\\)	.*/\\1/"
	} >obj-list2 &&
	git update-ref HEAD $commit
'

test_expect_success 'write midx with two packs' '
	pack1=$(git pack-objects --index-version=1 pack/test-1 <obj-list) &&
	pack2=$(git pack-objects --index-version=1 pack/test-2 <obj-list2) &&
	git midx --object-dir=. write &&
	midx_read_expect 2 33
'

test_expect_success 'Add more packs' '
	for j in `test_seq 1 10`
	do
		iii=$(printf '%03i' $i)
		test-tool genrandom "bar" 200 > wide_delta_$iii &&
		test-tool genrandom "baz $iii" 50 >> wide_delta_$iii &&
		test-tool genrandom "foo"$i 100 > deep_delta_$iii &&
		test-tool genrandom "foo"$(expr $i + 1) 100 >> deep_delta_$iii &&
		test-tool genrandom "foo"$(expr $i + 2) 100 >> deep_delta_$iii &&
		echo $iii >file_$iii &&
		test-tool genrandom "$iii" 8192 >>file_$iii &&
		git update-index --add file_$iii deep_delta_$iii wide_delta_$iii &&
		{ echo 101 && test-tool genrandom 100 8192; } >file_101 &&
		git update-index --add file_101 &&
		tree=$(git write-tree) &&
		commit=$(git commit-tree $tree -p HEAD</dev/null) && {
		echo $tree &&
		git ls-tree $tree | sed -e "s/.* \\([0-9a-f]*\\)	.*/\\1/"
		} >obj-list &&
		git update-ref HEAD $commit &&
		git pack-objects --index-version=2 pack/test-pack <obj-list &&
		i=$(expr $i + 1) || return 1 &&
		j=$(expr $j + 1) || return 1
	done
'

test_expect_success 'write midx with twelve packs' '
	git midx --object-dir=. write &&
	midx_read_expect 12 73
'

test_done
debug log:

solving d4ae988479 ...
found d4ae988479 in https://public-inbox.org/git/20180607140338.32440-14-dstolee@microsoft.com/
found e71aa52b80 in https://public-inbox.org/git/20180607140338.32440-13-dstolee@microsoft.com/
found a31c387c8f in https://public-inbox.org/git/20180607140338.32440-11-dstolee@microsoft.com/
found fdf4f84a90 in https://public-inbox.org/git/20180607140338.32440-10-dstolee@microsoft.com/
found abe545c7c4 in https://public-inbox.org/git/20180607140338.32440-9-dstolee@microsoft.com/
found 2c25a69744 in https://public-inbox.org/git/20180607140338.32440-8-dstolee@microsoft.com/
found e78514d8e9 in https://public-inbox.org/git/20180607140338.32440-7-dstolee@microsoft.com/
found 80f9389837 in https://public-inbox.org/git/20180607140338.32440-6-dstolee@microsoft.com/
found a590137af7 in https://public-inbox.org/git/20180607140338.32440-5-dstolee@microsoft.com/

applying [1/9] https://public-inbox.org/git/20180607140338.32440-5-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
new file mode 100755
index 0000000000..a590137af7


applying [2/9] https://public-inbox.org/git/20180607140338.32440-6-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index a590137af7..80f9389837 100755


applying [3/9] https://public-inbox.org/git/20180607140338.32440-7-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index 80f9389837..e78514d8e9 100755


applying [4/9] https://public-inbox.org/git/20180607140338.32440-8-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index e78514d8e9..2c25a69744 100755


applying [5/9] https://public-inbox.org/git/20180607140338.32440-9-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index 2c25a69744..abe545c7c4 100755


applying [6/9] https://public-inbox.org/git/20180607140338.32440-10-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index abe545c7c4..fdf4f84a90 100755


applying [7/9] https://public-inbox.org/git/20180607140338.32440-11-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index fdf4f84a90..a31c387c8f 100755


applying [8/9] https://public-inbox.org/git/20180607140338.32440-13-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index a31c387c8f..e71aa52b80 100755


applying [9/9] https://public-inbox.org/git/20180607140338.32440-14-dstolee@microsoft.com/
diff --git a/t/t5319-midx.sh b/t/t5319-midx.sh
index e71aa52b80..d4ae988479 100755

Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.
Checking patch t/t5319-midx.sh...
Applied patch t/t5319-midx.sh cleanly.

index at:
100755 d4ae98847905a0ce715c6e9540347d0b80b7c34d	t/t5319-midx.sh

git@vger.kernel.org list mirror (unofficial, one of many)

Archives are clonable:
	git clone --mirror https://public-inbox.org/git
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Example config snippet for mirrors

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.version-control.git
	nntp://ou63pmih66umazou.onion/inbox.comp.version-control.git
	nntp://czquwvybam4bgbro.onion/inbox.comp.version-control.git
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.version-control.git
	nntp://news.gmane.org/gmane.comp.version-control.git

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git