]> git.lyx.org Git - lyx.git/blob - development/keystest/cache-bisect.sh
* es/Intro.lyx: Accept all changes and disable CT
[lyx.git] / development / keystest / cache-bisect.sh
1 #!/bin/bash
2
3 # Cache-bisect is
4 # roughly based on git-bisect, but uses SVN and caches every build tree
5 # to maximize performance. The idea here is that if the first few tests
6 # happen very quickly, and give plausible results, you can have
7 # confidence that you can just leave it running. Without that confidence
8 # I'd be continually thinking "Is the bisect still working, maybe I
9 # should check" so the bisect would be taking up my mental space. With
10 # cache-bisect, I can fire-and-forget, leaving the CPU to do the menial
11 # tasks while I think about other things. Additionally caching the
12 # build-trees cuts down on the amount of bandwidth required on the SVN
13 # server
14 #  It uses three levels
15 #    1) At the bottom level, it bisects much like git-bisect
16 #    2) At the second level, it bisects, but only over cached revisions.
17 #    3) The the top level it does what I refer to as a "multisect". The
18 # idea is that you may not know which revision was a good revision, and
19 # picking revision 1 as the "good" revision is not only mildly wasteful
20 # but is likely to produce misleading results. Instead it starts
21 # stepping backwards, first trying 1.6.0, and then going backwards
22 # through trunk.
23
24         KT=$(cd $(dirname "$0") && pwd)
25 $KT/cache-bisect.py "$@" | tee out/cache-bisect-$USER.log
26
27