Re: [PATCH] Bisect: add checks at the beginning of "git bisect run".
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:43:02
Christian Couder [off-list ref] writes:
git bisect run --not grep string my_file instead of something like git bisect run ! grep string my_file
How's the former more useful than the latter was what I was wondering but I do not care too deeply.
For example one could write: git bisect run --good rev1 --bad rev2 my_script instead of git bisect start git bisect good rev1 git bisect bad rev2 git bisect run my_script
Likewise.
quoted
quoted
--check or --test run the script once and then do nothing if the result is goodHow would you use this?For example if you know that the last nightly build tagged "nightly_2007_03_27" was ok, you could use: git bisect start git bisect good nightly_2007_03_27 git bisect run --check make > /dev/null || { # extract commit and author email address from "$GIT_DIR/BISECT_RUN" # and send flame to author who broke the build with the commit } to automatically check that current source code builds ok.
As I said, bisect fundamentally needs one bad commit to start
bisecting, so after you give only one good commit, it would not
move to bisect branch nor suggest which commit to test. I
assume you intend to run the test on the tip of the current
branch here, but then your "git bisect run --check ./run-script"
is equivalent to running ./run-script and checking the exit
value.
In other words, the above would be equilvalent to
git bisect start
git bisect good nightly_2007_03_27
make >/dev/null || {
git bisect bad
git bisect run make >/dev/null
# extract commit and author email address from "$GIT_DIR/BISECT_RUN"
# and send flame to author who broke the build with the commit
}
I happen to find the latter easier to read as a shell script.