From: Shawn O. Pearce Date: Sun, 2 Sep 2007 19:30:26 +0000 (-0400) Subject: git-gui: Fix detaching current branch during checkout X-Git-Tag: gitgui-0.8.3~14 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=881d8f24cab5bf4e0fa71b17a3ab82e27b2e8ed7;p=git.git git-gui: Fix detaching current branch during checkout If the user tried to detach their HEAD while keeping the working directory on the same commit we actually did not completely do a detach operation internally. The problem was caused by git-gui not forcing the HEAD symbolic ref to be updated to a SHA-1 hash when we were not switching revisions. Now we update the HEAD ref if we aren't currently detached or the hashes don't match. Signed-off-by: Shawn O. Pearce --- diff --git a/lib/checkout_op.tcl b/lib/checkout_op.tcl index 170f737f6..76f04f285 100644 --- a/lib/checkout_op.tcl +++ b/lib/checkout_op.tcl @@ -396,7 +396,7 @@ method _after_readtree {} { set is_detached 0 } } else { - if {$new_hash ne $HEAD} { + if {!$is_detached || $new_hash ne $HEAD} { append log " to $new_expr" if {[catch { _detach_HEAD $log $new_hash