hgbook

annotate es/examples/bisect @ 379:dbc78b312fc0

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