git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
blob e19847eba0d21797d93f75a563ee09d8bfd54854 2047 bytes (raw)
name: git-bisect.sh 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
 
#!/bin/sh

USAGE='[help|start|bad|good|new|old|terms|skip|next|reset|visualize|view|replay|log|run]'
LONG_USAGE='git bisect help
	print this long help message.
git bisect start [--term-{new,bad}=<term> --term-{old,good}=<term>]
		 [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
	reset bisect state and start bisection.
git bisect (bad|new) [<rev>]
	mark <rev> a known-bad revision/
		a revision after change in a given property.
git bisect (good|old) [<rev>...]
	mark <rev>... known-good revisions/
		revisions before change in a given property.
git bisect terms [--term-good | --term-bad]
	show the terms used for old and new commits (default: bad, good)
git bisect skip [(<rev>|<range>)...]
	mark <rev>... untestable revisions.
git bisect next
	find next bisection to test and check it out.
git bisect reset [<commit>]
	finish bisection search and go back to commit.
git bisect (visualize|view)
	show bisect status in gitk.
git bisect replay <logfile>
	replay bisection log.
git bisect log
	show bisect log.
git bisect run <cmd>...
	use <cmd>... to automatically bisect.

Please use "git help bisect" to get the full man page.'

OPTIONS_SPEC=
. git-sh-setup

TERM_BAD=bad
TERM_GOOD=good

get_terms () {
	if test -s "$GIT_DIR/BISECT_TERMS"
	then
		{
		read TERM_BAD
		read TERM_GOOD
		} <"$GIT_DIR/BISECT_TERMS"
	fi
}

case "$#" in
0)
	usage ;;
*)
	cmd="$1"
	get_terms
	shift
	case "$cmd" in
	help)
		git bisect -h ;;
	start)
		git bisect--helper start "$@" ;;
	bad|good|new|old|"$TERM_BAD"|"$TERM_GOOD")
		git bisect--helper state "$cmd" "$@" ;;
	skip)
		git bisect--helper skip "$@" || exit;;
	next)
		# Not sure we want "next" at the UI level anymore.
		git bisect--helper next "$@" || exit ;;
	visualize|view)
		git bisect--helper visualize "$@" || exit;;
	reset)
		git bisect--helper reset "$@" ;;
	replay)
		git bisect--helper replay "$@" || exit;;
	log)
		git bisect--helper log || exit ;;
	run)
		git bisect--helper run "$@" || exit;;
	terms)
		git bisect--helper terms "$@" || exit;;
	*)
		usage ;;
	esac
esac

debug log:

solving e19847eba0d ...
found e19847eba0d in https://public-inbox.org/git/patch-11.13-d261c32ddd7-20221104T132117Z-avarab@gmail.com/ ||
	https://public-inbox.org/git/5b7a3d58b4f84f72e1ae2196fa67c76b0a6302ad.1661604264.git.gitgitgadget@gmail.com/ ||
	https://public-inbox.org/git/e97e187bbec93b47f35e3dd42b4831f1c1d8658d.1661885419.git.gitgitgadget@gmail.com/
found 405cf76f2a3 in https://80x24.org/mirrors/git.git
preparing index
index prepared:
100755 405cf76f2a3d94d5cb03b50d59ff729b745842ad	git-bisect.sh

applying [1/1] https://public-inbox.org/git/patch-11.13-d261c32ddd7-20221104T132117Z-avarab@gmail.com/
diff --git a/git-bisect.sh b/git-bisect.sh
index 405cf76f2a3..e19847eba0d 100755

Checking patch git-bisect.sh...
Applied patch git-bisect.sh cleanly.

skipping https://public-inbox.org/git/5b7a3d58b4f84f72e1ae2196fa67c76b0a6302ad.1661604264.git.gitgitgadget@gmail.com/ for e19847eba0d
skipping https://public-inbox.org/git/e97e187bbec93b47f35e3dd42b4831f1c1d8658d.1661885419.git.gitgitgadget@gmail.com/ for e19847eba0d
index at:
100755 e19847eba0d21797d93f75a563ee09d8bfd54854	git-bisect.sh

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).