From: Shawn O. Pearce Date: Thu, 23 Aug 2007 06:44:13 +0000 (-0400) Subject: git-gui: Do not offer to stage three-way diff hunks into the index X-Git-Tag: gitgui-0.8.2~1 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=9c9f5fa97fe078b59be14a6bcabb851745ddd48c;p=git.git git-gui: Do not offer to stage three-way diff hunks into the index git-apply does not accept a patch that was generated as a three-way combined diff format such as we see during merge conflicts. If we get such a diff in our diff viewer and try to send it to git-apply it just errors out and the user is left confused wondering why they cannot stage that hunk. Instead of feeding a known to be unacceptable hunk to git-apply we now just disable the stage/unstage context menu option if the hunk came from a three way diff. The user may still be confused about why they cannot work with a combined diff, but at least they are only confused as to why git-gui is not offering them the action. Signed-off-by: Shawn O. Pearce --- diff --git a/git-gui.sh b/git-gui.sh index 559b62be0..743b7d419 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -738,6 +738,7 @@ set empty_tree {} set current_branch {} set is_detached 0 set current_diff_path {} +set is_3way_diff 0 set selected_commit_type new ###################################################################### @@ -2444,6 +2445,9 @@ proc popup_diff_menu {ctxm x y X Y} { } set l "Stage Hunk For Commit" } + if {$::is_3way_diff} { + set s disabled + } $ctxm entryconf $::ui_diff_applyhunk -state $s -label $l tk_popup $ctxm $X $Y }