]> git.ipfire.org Git - thirdparty/git.git/blob - t/perf/p4211-line-log.sh
Merge branch 'dp/merge-strategy-doc-fix'
[thirdparty/git.git] / t / perf / p4211-line-log.sh
1 #!/bin/sh
2
3 test_description='Tests log -L performance'
4 . ./perf-lib.sh
5
6 test_perf_default_repo
7
8 # Pick a file to log pseudo-randomly. The sort key is the blob hash,
9 # so it is stable.
10 test_expect_success 'select a file' '
11 git ls-tree HEAD | grep ^100644 |
12 sort -k 3 | head -1 | cut -f 2 >filelist
13 '
14
15 file=$(cat filelist)
16 export file
17
18 test_perf 'git rev-list --topo-order (baseline)' '
19 git rev-list --topo-order HEAD >/dev/null
20 '
21
22 test_perf 'git log --follow (baseline for -M)' '
23 git log --oneline --follow -- "$file" >/dev/null
24 '
25
26 test_perf 'git log -L (renames off)' '
27 git log --no-renames -L 1:"$file" >/dev/null
28 '
29
30 test_perf 'git log -L (renames on)' '
31 git log -M -L 1:"$file" >/dev/null
32 '
33
34 test_perf 'git log --oneline --raw --parents' '
35 git log --oneline --raw --parents >/dev/null
36 '
37
38 test_perf 'git log --oneline --raw --parents -1000' '
39 git log --oneline --raw --parents -1000 >/dev/null
40 '
41
42 test_done