Merge branch 'cw/bisect'
* cw/bisect: Eliminate confusing "won't bisect on seeked tree" failure
This commit is contained in:
commit
722f53ca2f
@ -67,16 +67,18 @@ bisect_start() {
|
||||
die "Bad HEAD - I need a HEAD"
|
||||
case "$head" in
|
||||
refs/heads/bisect)
|
||||
if [ -s "$GIT_DIR/head-name" ]; then
|
||||
branch=`cat "$GIT_DIR/head-name"`
|
||||
if [ -s "$GIT_DIR/BISECT_START" ]; then
|
||||
branch=`cat "$GIT_DIR/BISECT_START"`
|
||||
else
|
||||
branch=master
|
||||
fi
|
||||
git checkout $branch || exit
|
||||
;;
|
||||
refs/heads/*|$_x40)
|
||||
# This error message should only be triggered by cogito usage,
|
||||
# and cogito users should understand it relates to cg-seek.
|
||||
[ -s "$GIT_DIR/head-name" ] && die "won't bisect on seeked tree"
|
||||
echo "${head#refs/heads/}" >"$GIT_DIR/head-name"
|
||||
echo "${head#refs/heads/}" >"$GIT_DIR/BISECT_START"
|
||||
;;
|
||||
*)
|
||||
die "Bad HEAD - strange symbolic ref"
|
||||
@ -353,8 +355,8 @@ bisect_reset() {
|
||||
return
|
||||
}
|
||||
case "$#" in
|
||||
0) if [ -s "$GIT_DIR/head-name" ]; then
|
||||
branch=`cat "$GIT_DIR/head-name"`
|
||||
0) if [ -s "$GIT_DIR/BISECT_START" ]; then
|
||||
branch=`cat "$GIT_DIR/BISECT_START"`
|
||||
else
|
||||
branch=master
|
||||
fi ;;
|
||||
@ -365,7 +367,9 @@ bisect_reset() {
|
||||
usage ;;
|
||||
esac
|
||||
if git checkout "$branch"; then
|
||||
# Cleanup head-name if it got left by an old version of git-bisect
|
||||
rm -f "$GIT_DIR/head-name"
|
||||
rm -f "$GIT_DIR/BISECT_START"
|
||||
bisect_clean_state
|
||||
fi
|
||||
}
|
||||
|
@ -260,7 +260,7 @@ test_expect_success 'bisect starting with a detached HEAD' '
|
||||
git checkout master^ &&
|
||||
HEAD=$(git rev-parse --verify HEAD) &&
|
||||
git bisect start &&
|
||||
test $HEAD = $(cat .git/head-name) &&
|
||||
test $HEAD = $(cat .git/BISECT_START) &&
|
||||
git bisect reset &&
|
||||
test $HEAD = $(git rev-parse --verify HEAD)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user