hgbook

view es/examples/bisect @ 380:1a4b507935de

began translation of tour-merge
author Javier Rojas <jerojasro@devnull.li>
date Wed Oct 29 00:37:55 2008 -0500 (2008-10-29)
parents
children
line source
1 #!/bin/bash
3 if hg -v | head -1 | grep -e "version 0.*"
4 then
5 #On mercurial 1.0 and later bisect is a builtin
6 echo '[extensions]' >> $HGRC
7 echo 'hbisect =' >> $HGRC
8 fi
10 # XXX There's some kind of horrible nondeterminism in the execution of
11 # bisect at the moment. Ugh.
13 #$ ignore: .*
15 #$ name: init
17 hg init mybug
18 cd mybug
20 #$ name: commits
22 buggy_change=22
24 for (( i = 0; i < 35; i++ )); do
25 if [[ $i = $buggy_change ]]; then
26 echo 'i have a gub' > myfile$i
27 hg commit -q -A -m 'buggy changeset'
28 else
29 echo 'nothing to see here, move along' > myfile$i
30 hg commit -q -A -m 'normal changeset'
31 fi
32 done
34 #$ name: help
36 hg help bisect
38 #$ name: search.init
40 if hg -v | head -1 | grep -e "version 0.*"
41 then
42 #On mercurial 1.0 --init disappeared
43 hg bisect --init
44 fi
46 #$ name: search.bad-init
48 hg bisect --bad
50 #$ name: search.good-init
52 hg bisect --good 10
54 #$ name: search.step1
56 if grep -q 'i have a gub' *
57 then
58 result=bad
59 else
60 result=good
61 fi
63 echo this revision is $result
64 hg bisect --$result
66 #$ name: search.mytest
68 mytest() {
69 if grep -q 'i have a gub' *
70 then
71 result=bad
72 else
73 result=good
74 fi
76 echo this revision is $result
77 hg bisect --$result
78 }
80 #$ name: search.step2
82 mytest
84 #$ name: search.rest
86 mytest
87 mytest
88 mytest
90 #$ name: search.reset
92 hg bisect --reset
94 #$ name:
96 exit 0