Bisect is now a core command

Matt Mackall mpm at selenic.com
Mon Dec 31 20:16:11 CST 2007


In the past few days, I've made a bunch of improvements to bisect:

- now a built-in command
- orders of magnitude faster
- well-bounded memory use
- simpler, more standard interface
- support for skipping revisions
- simpler state storage
- ability to skip checkout at the end
- automatically sorts out which direction we're searching
  (good to bad or bad to good)

Here's a sample session:

$ hg bisect -r            # reset the bisect state
$ hg bisect -g tip        # mark the tip as good
$ time hg bisect -bU null # mark start as bad
Testing changeset 37852:3bd36d4017f0 (75610 changesets remaining, ~16 tests)

real	0m27.697s
user	0m26.174s
sys	0m1.064s

The old command syntax still works, of course. Earlier versions would
have exhausted memory with a tenth of the changesets, and taken much
longer to do it.

-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial mailing list