Teach difftool and mergetool about VS Code and VS Code Insiders

Signed-off-by: Wen Bei Li <wenbei...@gmail.com>
---
Hello Johannes, thank you for reviewing my patch. It's the first time I've done 
this via email.
I've added `code-insiders` as you suggested, but I wasn't sure if I should send 
it as a v2.
I used this commit as a reference: 
https://github.com/git/git/commit/5116eab70bf8a0c8b1c29a09c4b932c4d1cf2701

 contrib/completion/git-completion.bash | 2 +-
 git-mergetool--lib.sh                  | 2 +-
 mergetools/code                        | 7 +++++++
 mergetools/code-insiders               | 7 +++++++
 4 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 mergetools/code
 create mode 100644 mergetools/code-insiders

diff --git a/contrib/completion/git-completion.bash 
b/contrib/completion/git-completion.bash
index 3eefbabdb1..6eaa0df5b2 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1502,7 +1502,7 @@ _git_diff ()
 
 __git_mergetools_common="diffuse diffmerge ecmerge emerge kdiff3 meld opendiff
                        tkdiff vimdiff gvimdiff xxdiff araxis p4merge bc
-                       codecompare smerge
+                       codecompare smerge code code-insiders
 "
 
 _git_difftool ()
diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh
index 204a5acd66..44f1967c84 100644
--- a/git-mergetool--lib.sh
+++ b/git-mergetool--lib.sh
@@ -283,7 +283,7 @@ list_merge_tool_candidates () {
                fi
                tools="$tools gvimdiff diffuse diffmerge ecmerge"
                tools="$tools p4merge araxis bc codecompare"
-               tools="$tools smerge"
+               tools="$tools smerge code code-insiders"
        fi
        case "${VISUAL:-$EDITOR}" in
        *vim*)
diff --git a/mergetools/code b/mergetools/code
new file mode 100644
index 0000000000..566a0d9d63
--- /dev/null
+++ b/mergetools/code
@@ -0,0 +1,7 @@
+diff_cmd () {
+       "$merge_tool_path" --wait --diff "$LOCAL" "$REMOTE"
+}
+
+merge_cmd () {
+       "$merge_tool_path" --wait "$MERGED"
+}
diff --git a/mergetools/code-insiders b/mergetools/code-insiders
new file mode 100644
index 0000000000..566a0d9d63
--- /dev/null
+++ b/mergetools/code-insiders
@@ -0,0 +1,7 @@
+diff_cmd () {
+       "$merge_tool_path" --wait --diff "$LOCAL" "$REMOTE"
+}
+
+merge_cmd () {
+       "$merge_tool_path" --wait "$MERGED"
+}
-- 
2.21.0.windows.1

Reply via email to