summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Tim Henigan <tim.henigan@gmail.com>2012-03-05 09:28:07 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2012-03-05 09:31:47 -0800
commit284a126c3ef3dfedede9bc64df4cf3a24600dea5 (patch)
tree9953ba633e4b7e1acc85eb46647e39cb83d1cde8
parentUpdate draft release notes to 1.7.10 (diff)
downloadtgif-284a126c3ef3dfedede9bc64df4cf3a24600dea5.tar.xz
mergetools: add a plug-in to support DeltaWalker
DeltaWalker is a non-free tool popular among some users. Add a plug-in to support it from difftool and mergetool. Note that the $(pwd)/ in front of $MERGED should not be necessary. However without it, DeltaWalker crashes with a JRE exception. Signed-off-by: Tim Henigan <tim.henigan@gmail.com> Helped-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--mergetools/deltawalker21
1 files changed, 21 insertions, 0 deletions
diff --git a/mergetools/deltawalker b/mergetools/deltawalker
new file mode 100644
index 0000000000..b3c71b6236
--- /dev/null
+++ b/mergetools/deltawalker
@@ -0,0 +1,21 @@
+diff_cmd () {
+ "$merge_tool_path" "$LOCAL" "$REMOTE" >/dev/null 2>&1
+}
+
+merge_cmd () {
+ # Adding $(pwd)/ in front of $MERGED should not be necessary.
+ # However without it, DeltaWalker (at least v1.9.8 on Windows)
+ # crashes with a JRE exception. The DeltaWalker user manual,
+ # shows $(pwd)/ whenever the '-merged' options is given.
+ # Adding it here seems to work around the problem.
+ if $base_present
+ then
+ "$merge_tool_path" "$LOCAL" "$REMOTE" "$BASE" -merged="$(pwd)/$MERGED"
+ else
+ "$merge_tool_path" "$LOCAL" "$REMOTE" -merged="$(pwd)/$MERGED"
+ fi >/dev/null 2>&1
+}
+
+translate_merge_tool_path() {
+ echo DeltaWalker
+}