File: p4211-line-log.sh

package info (click to toggle)
cgit 0.10.2.git2.0.1-3%2Bdeb8u1
  • links: PTS
  • area: main
  • in suites: jessie
  • size: 26,640 kB
  • ctags: 19,675
  • sloc: ansic: 159,238; sh: 129,259; perl: 29,890; tcl: 21,214; python: 5,362; makefile: 3,295; lisp: 1,786; php: 120; asm: 98; csh: 45
file content (34 lines) | stat: -rwxr-xr-x 674 bytes parent folder | download | duplicates (6)
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
#!/bin/sh

test_description='Tests log -L performance'
. ./perf-lib.sh

test_perf_default_repo

# Pick a file to log pseudo-randomly.  The sort key is the blob hash,
# so it is stable.
test_expect_success 'select a file' '
	git ls-tree HEAD | grep ^100644 |
	sort -k 3 | head -1 | cut -f 2 >filelist
'

file=$(cat filelist)
export file

test_perf 'git rev-list --topo-order (baseline)' '
	git rev-list --topo-order HEAD >/dev/null
'

test_perf 'git log --follow (baseline for -M)' '
	git log --oneline --follow -- "$file" >/dev/null
'

test_perf 'git log -L' '
	git log -L 1:"$file" >/dev/null
'

test_perf 'git log -M -L' '
	git log -M -L 1:"$file" >/dev/null
'

test_done