git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 3/3] git-bisect: modernize branch shuffling hack

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 15, 2007, 09:01 UTC
Message-ID
<7vfxz76fwf.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<20071115081807.06fe092b.chriscool@tuxfamily.org>

When switching to a new rev, we first made "new-bisect" branch to point at the chosen commit, attempt to switch to it, and then finally renamed the new-bisect branch to bisect by hand when successful. This is so that we can catch checkout failure (your local modification may interfere with switching to the chosen version) without losing information on which commit the next attempt should be made.

Rewrite it using a more modern form but without breaking the safety.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 git-bisect.sh |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/git-bisect.sh b/git-bisect.sh
index 4b74a7b..dae8a8e 100755
--- a/git-bisect.sh
+++ b/git-bisect.sh
@@ -316,10 +316,9 @@ bisect_next() {
 	exit_if_skipped_commits "$bisect_rev"
 
 	echo "Bisecting: $bisect_nr revisions left to test after this"
-	echo "$bisect_rev" >"$GIT_DIR/refs/heads/new-bisect"
+	git branch -f new-bisect "$bisect_rev"
 	git checkout -q new-bisect || exit
-	mv "$GIT_DIR/refs/heads/new-bisect" "$GIT_DIR/refs/heads/bisect" &&
-	GIT_DIR="$GIT_DIR" git symbolic-ref HEAD refs/heads/bisect
+	git branch -M new-bisect bisect
 	git show-branch "$bisect_rev"
 }
 
-- 
1.5.3.5.1780.gca2b
Previous: Junio C HamanoNext: Miles Bader
Message 15 of 18 in “Bisect reset: remove bisect refs that may have been packed.”
  1. Bisect reset: remove bisect refs that may have been packed.Christian Couder, Nov 15, 2007
  2. Junio C HamanoNov 15, 2007
  3. Johannes SixtNov 15, 2007
  4. Shawn O. PearceNov 15, 2007
  5. Jeff KingNov 15, 2007
  6. Johannes SchindelinNov 15, 2007
  7. Junio C HamanoNov 15, 2007
  8. 1/3 git-bisect: war on "sed"Junio C Hamano, Nov 15, 2007
  9. Miles BaderNov 15, 2007
  10. Wincent ColaiutaNov 15, 2007
  11. Miles BaderNov 15, 2007
  12. Andreas EricssonNov 15, 2007
  13. David KastrupNov 15, 2007
  14. 2/3 git-bisect: use update-ref to mark good/bad commitsJunio C Hamano, Nov 15, 2007
  15. 3/3 git-bisect: modernize branch shuffling hackJunio C Hamano, Nov 15, 2007
  16. Miles BaderNov 15, 2007
  17. David KastrupNov 15, 2007
  18. Miles BaderNov 15, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.