diff options
author | Johannes Sixt <johannes.sixt@telecom.at> | 2008-10-14 13:48:37 +0200 |
---|---|---|
committer | Shawn O. Pearce <spearce@spearce.org> | 2008-11-01 16:12:29 -0700 |
commit | 63aa1d0cb78e8fcf36ea2b8b65750d9a45d59f63 (patch) | |
tree | 2bc92ea7a6fec62f99401063651653f487cd9ac2 | |
parent | 8c76212529570aed70c46d6f252cb1a4010f3f2e (diff) | |
download | git-63aa1d0cb78e8fcf36ea2b8b65750d9a45d59f63.tar.gz git-63aa1d0cb78e8fcf36ea2b8b65750d9a45d59f63.tar.xz |
git-gui: Do not munge conflict marker lines in a normal diff
Previously, conflict markers were highlighted in two ways: (1) They
received a distinguishing color; and (2) they had the '+' removed at the
beginning of the line. However, by doing (2), a hunk that contained
conflict markers could not be staged or unstaged because the resulting
patch was corrupted. With this change we no longer modify the diff text
of a 2-way diff, so that "Stage Hunk" and friends work.
Note that 3-way diff of a conflicted file is unaffected by this change,
and '++' before conflict markers is still removed. But this has no negative
impact because in this mode staging hunks or lines is disabled anyway.
Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r-- | lib/diff.tcl | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/lib/diff.tcl b/lib/diff.tcl index bdcbbf86e..94ee38ccc 100644 --- a/lib/diff.tcl +++ b/lib/diff.tcl @@ -377,7 +377,6 @@ proc read_diff {fd cont_info} { {+} { if {[regexp {^\+([<>]{7} |={7})} $line _g op]} { set is_conflict_diff 1 - set line [string replace $line 0 0 { }] set tags d$op } else { set tags d_+ |