git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] mergetools: vscode: new tool

From
Alex Henrie <alexhenrie24@gmail.com>
Date
Sep 2, 2024, 02:59 UTC
Message-ID
<20240902025918.99657-1-alexhenrie24@gmail.com>

VSCode has supported three-way merges since 2022, see <https://github.com/microsoft/vscode/issues/5770#issuecomment-1188658476>.

Although the program binary is located at /usr/bin/code, name the mergetool "vscode" because the word "code" is too generic and would lead to confusion. The name "vscode" also matches Git's existing contrib/vscode directory.

On Windows, VSCode adds the directory that contains code.cmd to %PATH%, so there is no need to invoke mergetool_find_win32_cmd to search for the program.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
---
 mergetools/vscode | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 mergetools/vscode
diff --git a/mergetools/vscode b/mergetools/vscode
new file mode 100644
index 0000000000..3b39b458d6
--- /dev/null
+++ b/mergetools/vscode
@@ -0,0 +1,19 @@
+diff_cmd () {
+	"$merge_tool_path" --wait --diff "$LOCAL" "$REMOTE"
+}
+
+diff_cmd_help () {
+	echo "Use Visual Studio Code (requires a graphical session)"
+}
+
+merge_cmd () {
+	"$merge_tool_path" --wait --merge "$REMOTE" "$LOCAL" "$BASE" "$MERGED"
+}
+
+merge_cmd_help () {
+	echo "Use Visual Studio Code (requires a graphical session)"
+}
+
+translate_merge_tool_path () {
+	echo code
+}
-- 
2.46.0
Next: Johannes Schindelin
Message 1 of 3 in “mergetools: vscode: new tool”
  1. mergetools: vscode: new toolAlex Henrie, Sep 2, 2024
  2. Johannes SchindelinSep 3, 2024
  3. Junio C HamanoSep 3, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.