hgbook

diff en/examples/bisect @ 130:26b7a4e943aa

Describe the bisect extension.
author Bryan O'Sullivan <bos@serpentine.com>
date Thu Dec 28 14:06:15 2006 -0800 (2006-12-28)
parents
children 153efeaa8f57
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/en/examples/bisect	Thu Dec 28 14:06:15 2006 -0800
     1.3 @@ -0,0 +1,80 @@
     1.4 +#!/bin/bash
     1.5 +
     1.6 +echo '[extensions]' >> $HGRC
     1.7 +echo 'hbisect =' >> $HGRC
     1.8 +
     1.9 +#$ name: init
    1.10 +
    1.11 +hg init mybug
    1.12 +cd mybug
    1.13 +
    1.14 +#$ name: commits
    1.15 +
    1.16 +buggy_change=37
    1.17 +
    1.18 +for (( i = 0; i < 50; i++ )); do
    1.19 +  if [[ $i = $buggy_change ]]; then
    1.20 +    echo 'i have a gub' > myfile$i
    1.21 +    hg commit -q -A -m 'buggy changeset'
    1.22 +  else
    1.23 +    echo 'nothing to see here, move along' > myfile$i
    1.24 +    hg commit -q -A -m 'normal changeset'
    1.25 +  fi
    1.26 +done
    1.27 +
    1.28 +#$ name: help
    1.29 +
    1.30 +hg help bisect
    1.31 +hg bisect help
    1.32 +
    1.33 +#$ name: search.init
    1.34 +
    1.35 +hg bisect init
    1.36 +
    1.37 +#$ name: search.bad-init
    1.38 +
    1.39 +hg bisect bad
    1.40 +
    1.41 +#$ name: search.good-init
    1.42 +
    1.43 +hg bisect good 10
    1.44 +
    1.45 +#$ name: search.step1
    1.46 +
    1.47 +if grep -q 'i have a gub' *
    1.48 +then
    1.49 +  result=bad
    1.50 +else
    1.51 +  result=good
    1.52 +fi
    1.53 +
    1.54 +echo this revision is $result
    1.55 +hg bisect $result
    1.56 +
    1.57 +#$ name: mytest
    1.58 +
    1.59 +mytest() {
    1.60 +  if grep -q 'i have a gub' *
    1.61 +  then
    1.62 +    result=bad
    1.63 +  else
    1.64 +    result=good
    1.65 +  fi
    1.66 +
    1.67 +  echo this revision is $result
    1.68 +  hg bisect $result
    1.69 +}
    1.70 +  
    1.71 +#$ name: search.step2
    1.72 +
    1.73 +mytest
    1.74 +
    1.75 +#$ name: search.rest
    1.76 +
    1.77 +mytest
    1.78 +mytest
    1.79 +mytest
    1.80 +
    1.81 +#$ name: search.reset
    1.82 +
    1.83 +hg bisect reset