Browse Source

git-gui: Support conflict states _U & UT.

Support _U (local deleted, remote modified) and
UT (file type changed in conflict) modes.

Note that 'file type changed' does not refer to
changes in the executable bit, instead it denotes
replacing a file with a link, or vice versa.

Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
maint
Alexander Gavrilov 17 years ago committed by Shawn O. Pearce
parent
commit
ff515d81fa
  1. 6
      git-gui.sh
  2. 1
      lib/commit.tcl
  3. 2
      lib/diff.tcl
  4. 1
      lib/index.tcl

6
git-gui.sh

@ -1669,10 +1669,12 @@ foreach i { @@ -1669,10 +1669,12 @@ foreach i {
{D_ {mc "Staged for removal"}}
{DO {mc "Staged for removal, still present"}}

{_U {mc "Requires merge resolution"}}
{U_ {mc "Requires merge resolution"}}
{UU {mc "Requires merge resolution"}}
{UM {mc "Requires merge resolution"}}
{UD {mc "Requires merge resolution"}}
{UT {mc "Requires merge resolution"}}
} {
set text [eval [lindex $i 1]]
if {$max_status_desc < [string length $text]} {
@ -1843,7 +1845,7 @@ proc toggle_or_diff {w x y} { @@ -1843,7 +1845,7 @@ proc toggle_or_diff {w x y} {
# Do not stage files with conflicts
if {[info exists file_states($path)]} {
set state [lindex $file_states($path) 0]
if {[string index $state 0] eq {U}} {
if {[string first {U} $state] >= 0} {
set col 1
}
}
@ -2814,7 +2816,7 @@ proc popup_diff_menu {ctxm ctxmmg x y X Y} { @@ -2814,7 +2816,7 @@ proc popup_diff_menu {ctxm ctxmmg x y X Y} {
} else {
set state {__}
}
if {[string index $state 0] eq {U}} {
if {[string first {U} $state] >= 0} {
tk_popup $ctxmmg $X $Y
} else {
if {$::ui_index eq $::current_diff_side} {

1
lib/commit.tcl

@ -151,6 +151,7 @@ The rescan will be automatically started now. @@ -151,6 +151,7 @@ The rescan will be automatically started now.
D? -
T_ -
M? {set files_ready 1}
_U -
U? {
error_popup [mc "Unmerged files cannot be committed.


2
lib/diff.tcl

@ -166,7 +166,7 @@ proc show_diff {path w {lno {}} {scroll_pos {}}} { @@ -166,7 +166,7 @@ proc show_diff {path w {lno {}} {scroll_pos {}}} {
lappend cmd diff-index
lappend cmd --cached
} elseif {$w eq $ui_workdir} {
if {[string index $m 0] eq {U}} {
if {[string first {U} $m] >= 0} {
lappend cmd diff
} else {
lappend cmd diff-files

1
lib/index.tcl

@ -164,6 +164,7 @@ proc write_update_index {fd pathList totalCnt batch after} { @@ -164,6 +164,7 @@ proc write_update_index {fd pathList totalCnt batch after} {
_O -
AM {set new A_}
_T {set new T_}
_U -
U? {
if {[file exists $path]} {
set new M_

Loading…
Cancel
Save