SVN-BISECT
Section: User Commands (1)
Updated: 2009-10-22
Index
Return to Main Contents
NAME
svn-bisect - Bisect Subversion revisions to find a regression
SYNOPSIS
svn-bisect start
[good_rev [bad_rev]]
svn-bisect {good|bad}
[rev]
svn-bisect run
command
svn-bisect reset
svn-bisect status
DESCRIPTION
svn-bisect
helps to automate finding a bug or behavior change in a
Subversion
working copy. Given an initial "good" revision, with the desired
or original behavior, and a newer "bad" revision, with the
undesired or modified behavior,
svn-bisect
will do a binary search through the revision range to find which
revision caused the change.
svn-bisect
must be initialized in a working copy, with
svn-bisect start.
It also needs to be given at least one
good
revision (the baseline) and one
bad
revision (known modified behavior) revision.
Sub-commands:
- start
-
Initializes or reinitializes
svn-bisect;
optionally takes
good and bad
revision parameters.
- good rev
-
- bad rev
-
Tells
svn-bisect
that a revision is
good or bad,
defining or narrowing the search space. If not specified,
revision
defaults to the current revision in the working copy.
svn-bisect
will then update to a revision halfway between the new
good and bad
boundaries. If this update crosses a point where a branch was created,
it switches in or out of the branch.
- reset
-
Resets the working copy to the revision and branch where
svn-bisect start
was run. In the simple case this is equivalent to
rm -r .svn-bisect; svn update,
but not if it has crossed branches, and not if you did not start at the
HEAD
revision. In any case,
svn-bisect
never keeps track of mixed-revision working copies, so do not use
svn-bisect
in a working copy that will need to be restored to mixed revisions.
- status
-
Prints a brief status message.
- run command
-
Runs the bisection in a loop. You must have already defined initial
good and bad
boundary conditions. Each iteration through the loop runs
command
as a shell command (a single argument, quoted if necessary) on the
chosen revision, then marks the revision as
good or bad,
based on the exit status of
command.
EXAMPLES
Assume you are trying to find which revision between 1250 and 1400
caused the
make check
command to fail.
svn-bisect start 1250 1400
svn-bisect run 'make check'
svn-bisect reset
ENVIRONMENT
- SVN
-
The Subversion command-line program to call (default
svn).
FILES
- .svn-bisect
-
The directory containing state information, removed after a successful
bisection.
SEE ALSO
git-bisect(1).
AUTHOR
Written by Robert Millan and Peter Samuelson, for the Debian Project
(but may be used by others).
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- EXAMPLES
-
- ENVIRONMENT
-
- FILES
-
- SEE ALSO
-
- AUTHOR
-
This document was created by
man2html,
using the manual pages.
Time: 21:26:42 GMT, April 24, 2024