提交 2b1fbf90 编写于 作者: T Thomas Rast 提交者: Paul Mackerras

gitk: Fix direction of symmetric difference in optimized mode

ee66e089 (gitk: Make updates go faster, 2008-05-09) implemented an
optimized mode where gitk parses the arguments with rev-parse, and
manually reads history in chunks.  As mentioned in the commit message,
symmetric differences are a problem there:

    One wrinkle is that we have to turn symmetric diff arguments (of the
    form a...b) back into symmetric diff form so that --left-right still
    works, as git rev parse turns a...b into a b ^merge_base(a,b).

However, git-rev-parse returns a...b in the swapped order

    b a ^merge_base(a,b)

This has been the case since at least 1f8115b1 (the state of master at
the time of the abovementioned ee66e089; Merge branch 'maint',
2008-05-08).  So gitk flipped the sides of symmetric differences
whenever it was in optimized mode.

Fix this by swapping the sides of the reconstruction code.
Signed-off-by: NThomas Rast <trast@student.ethz.ch>
Signed-off-by: NPaul Mackerras <paulus@samba.org>
上级 ffe15297
......@@ -288,7 +288,7 @@ proc parseviewrevs {view revs} {
if {$sdm != 2} {
lappend ret $id
} else {
lset ret end [lindex $ret end]...$id
lset ret end $id...[lindex $ret end]
}
lappend pos $id
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册