mergetools: add description to all diff/merge tools

The output of `git mergetool --tool-help` and `git difftool --tool-help` only showed the `alias` of each available merge/diff tool. It is not always obvious what tool these `aliases` end up using (ex: `opendiff` runs `FileMerge` and `bc` runs `Beyond Compare`). This commit adds a short description to each of them to help the user identify the `alias` they want. Signed-off-by: Fernando Ramos <greenfoo@u92.eu> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Fernando Ramos committed Mar 30, 2022 at 21:19 UTC 980145f7470e20826ca22d7343494712eda9c81d
20 files changed +160
mergetools/araxis
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" -wait -2 "$LOCAL" "$REMOTE" >/dev/null 2>&1
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Araxis Merge (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -13,6 +17,10 @@ merge_cmd () {
17 fi
18 }
19
20 +merge_cmd_help () {
21 + echo "Use Araxis Merge (requires a graphical session)"
22 +}
23 +
24 translate_merge_tool_path() {
25 echo compare
26 }
mergetools/bc
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Beyond Compare (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -13,6 +17,10 @@ merge_cmd () {
17 fi
18 }
19
20 +merge_cmd_help () {
21 + echo "Use Beyond Compare (requires a graphical session)"
22 +}
23 +
24 translate_merge_tool_path() {
25 if type bcomp >/dev/null 2>/dev/null
26 then
mergetools/codecompare
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Code Compare (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -13,6 +17,10 @@ merge_cmd () {
17 fi
18 }
19
20 +merge_cmd_help () {
21 + echo "Use Code Compare (requires a graphical session)"
22 +}
23 +
24 translate_merge_tool_path() {
25 if merge_mode
26 then
mergetools/deltawalker
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE" >/dev/null 2>&1
3 }
4
5 +diff_cmd_help () {
6 + echo "Use DeltaWalker (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 # Adding $(pwd)/ in front of $MERGED should not be necessary.
11 # However without it, DeltaWalker (at least v1.9.8 on Windows)
@@ -16,6 +20,10 @@ merge_cmd () {
20 fi >/dev/null 2>&1
21 }
22
23 +merge_cmd_help () {
24 + echo "Use DeltaWalker (requires a graphical session)"
25 +}
26 +
27 translate_merge_tool_path () {
28 echo DeltaWalker
29 }
mergetools/diffmerge
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE" >/dev/null 2>&1
3 }
4
5 +diff_cmd_help () {
6 + echo "Use DiffMerge (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -13,6 +17,10 @@ merge_cmd () {
17 fi
18 }
19
20 +merge_cmd_help () {
21 + echo "Use DiffMerge (requires a graphical session)"
22 +}
23 +
24 exit_code_trustable () {
25 true
26 }
mergetools/diffuse
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE" | cat
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Diffuse (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -13,3 +17,7 @@ merge_cmd () {
17 "$LOCAL" "$MERGED" "$REMOTE" | cat
18 fi
19 }
20 +
21 +merge_cmd_help () {
22 + echo "Use Diffuse (requires a graphical session)"
23 +}
mergetools/ecmerge
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" --default --mode=diff2 "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use ECMerge (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -12,3 +16,7 @@ merge_cmd () {
16 --default --mode=merge2 --to="$MERGED"
17 fi
18 }
19 +
20 +merge_cmd_help () {
21 + echo "Use ECMerge (requires a graphical session)"
22 +}
mergetools/emerge
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" -f emerge-files-command "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Emacs' Emerge"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -17,6 +21,10 @@ merge_cmd () {
21 fi
22 }
23
24 +merge_cmd_help () {
25 + echo "Use Emacs' Emerge"
26 +}
27 +
28 translate_merge_tool_path() {
29 echo emacs
30 }
mergetools/examdiff
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE" -nh
3 }
4
5 +diff_cmd_help () {
6 + echo "Use ExamDiff Pro (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -11,6 +15,10 @@ merge_cmd () {
15 fi
16 }
17
18 +merge_cmd_help () {
19 + echo "Use ExamDiff Pro (requires a graphical session)"
20 +}
21 +
22 translate_merge_tool_path() {
23 mergetool_find_win32_cmd "ExamDiff.com" "ExamDiff Pro"
24 }
mergetools/guiffy
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Guiffy's Diff Tool (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -13,6 +17,10 @@ merge_cmd () {
17 fi
18 }
19
20 +merge_cmd_help () {
21 + echo "Use Guiffy's Diff Tool (requires a graphical session)"
22 +}
23 +
24 exit_code_trustable () {
25 true
26 }
mergetools/kdiff3
+8
@@ -4,6 +4,10 @@ diff_cmd () {
4 "$LOCAL" "$REMOTE" >/dev/null 2>&1
5 }
6
7 +diff_cmd_help () {
8 + echo "Use KDiff3 (requires a graphical session)"
9 +}
10 +
11 merge_cmd () {
12 if $base_present
13 then
@@ -22,6 +26,10 @@ merge_cmd () {
26 fi
27 }
28
29 +merge_cmd_help () {
30 + echo "Use KDiff3 (requires a graphical session)"
31 +}
32 +
33 exit_code_trustable () {
34 true
35 }
mergetools/kompare
+8
@@ -2,10 +2,18 @@ can_merge () {
2 return 1
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Kompare (requires a graphical session)"
7 +}
8 +
9 diff_cmd () {
10 "$merge_tool_path" "$LOCAL" "$REMOTE"
11 }
12
13 +merge_cmd_help () {
14 + echo "Use Kompare (requires a graphical session)"
15 +}
16 +
17 exit_code_trustable () {
18 true
19 }
mergetools/meld
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Meld (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 check_meld_for_features
11
@@ -20,6 +24,10 @@ merge_cmd () {
24 fi
25 }
26
27 +merge_cmd_help () {
28 + echo "Use Meld (requires a graphical session) with optional \`auto merge\` (see \`git help mergetool\`'s \`CONFIGURATION\` section)"
29 +}
30 +
31 # Get meld help message
32 init_meld_help_msg () {
33 if test -z "$meld_help_msg"
mergetools/opendiff
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE" | cat
3 }
4
5 +diff_cmd_help () {
6 + echo "Use FileMerge (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -12,3 +16,7 @@ merge_cmd () {
16 -merge "$MERGED" | cat
17 fi
18 }
19 +
20 +merge_cmd_help () {
21 + echo "Use FileMerge (requires a graphical session)"
22 +}
mergetools/p4merge
+8
@@ -19,6 +19,10 @@ diff_cmd () {
19 fi
20 }
21
22 +diff_cmd_help () {
23 + echo "Use HelixCore P4Merge (requires a graphical session)"
24 +}
25 +
26 merge_cmd () {
27 if ! $base_present
28 then
@@ -34,3 +38,7 @@ create_empty_file () {
38
39 printf "%s" "$empty_file"
40 }
41 +
42 +merge_cmd_help () {
43 + echo "Use HelixCore P4Merge (requires a graphical session)"
44 +}
mergetools/smerge
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" mergetool "$LOCAL" "$REMOTE" -o "$MERGED"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use Sublime Merge (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -10,3 +14,7 @@ merge_cmd () {
14 "$merge_tool_path" mergetool "$LOCAL" "$REMOTE" -o "$MERGED"
15 fi
16 }
17 +
18 +merge_cmd_help () {
19 + echo "Use Sublime Merge (requires a graphical session)"
20 +}
mergetools/tkdiff
+8
@@ -2,6 +2,10 @@ diff_cmd () {
2 "$merge_tool_path" "$LOCAL" "$REMOTE"
3 }
4
5 +diff_cmd_help () {
6 + echo "Use TkDiff (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -14,3 +18,7 @@ merge_cmd () {
18 exit_code_trustable () {
19 true
20 }
21 +
22 +merge_cmd_help () {
23 + echo "Use TkDiff (requires a graphical session)"
24 +}
mergetools/tortoisemerge
+8
@@ -2,6 +2,10 @@ can_diff () {
2 return 1
3 }
4
5 +diff_cmd_help () {
6 + echo "Use TortoiseMerge (requires a graphical session)"
7 +}
8 +
9 merge_cmd () {
10 if $base_present
11 then
@@ -30,3 +34,7 @@ translate_merge_tool_path() {
34 echo tortoisemerge
35 fi
36 }
37 +
38 +merge_cmd_help () {
39 + echo "Use TortoiseMerge (requires a graphical session)"
40 +}
mergetools/winmerge
+8
@@ -3,6 +3,10 @@ diff_cmd () {
3 return 0
4 }
5
6 +diff_cmd_help () {
7 + echo "Use WinMerge (requires a graphical session)"
8 +}
9 +
10 merge_cmd () {
11 # mergetool.winmerge.trustExitCode is implicitly false.
12 # touch $BACKUP so that we can check_unchanged.
@@ -13,3 +17,7 @@ merge_cmd () {
17 translate_merge_tool_path() {
18 mergetool_find_win32_cmd "WinMergeU.exe" "WinMerge"
19 }
20 +
21 +merge_cmd_help () {
22 + echo "Use WinMerge (requires a graphical session)"
23 +}
mergetools/xxdiff
+8
@@ -12,6 +12,10 @@ diff_cmd () {
12 fi
13 }
14
15 +diff_cmd_help () {
16 + echo "Use xxdiff (requires a graphical session)"
17 +}
18 +
19 merge_cmd () {
20 if $base_present
21 then
@@ -28,3 +32,7 @@ merge_cmd () {
32 --merged-file "$MERGED" "$LOCAL" "$REMOTE"
33 fi
34 }
35 +
36 +merge_cmd_help () {
37 + echo "Use xxdiff (requires a graphical session)"
38 +}