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

[PATCH v2 1/1] contrib/vscode/: debugging with VS Code and gdb

From
COGONI Guillaume <cogoni.guillaume@gmail.com>
Date
Apr 6, 2022, 15:18 UTC
Message-ID
<20220406151858.5047-2-cogoni.guillaume@gmail.com>
In-Reply-To
<20220406151858.5047-1-cogoni.guillaume@gmail.com>

The externalConsole=true setting is broken for many users (launching the debugger with such setting results in VS Code waiting forever without actually starting the debugger). Also, this setting is a matter of user preference, and is arguably better set in a "launch" section in the user-wide settings.json than hardcoded in our script. Remove the line to use VS Code's default, or the user's setting.

Add useful links in contrib/vscode/README.md to help the user to configure VS Code and how to use the debugging feature.

Add a mention to the README and the init.sh in Documentation/ MyFirstContribution.txt and a part to convince a newcomer that VS Code can be helpful.

Signed-off-by: COGONI Guillaume <cogoni.guillaume@gmail.com>
Co-authored-by: BRESSAT Jonathan <git.jonathan.bressat@gmail.com>
Helped-by: Matthieu Moy <Matthieu.Moy@univ-lyon1.fr>
Helped-by: Derrick Stolee <derrickstolee@github.com>
---
 Documentation/MyFirstContribution.txt | 11 +++++++++++
 contrib/vscode/README.md              |  6 +++++-
 contrib/vscode/init.sh                |  1 -
 3 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/Documentation/MyFirstContribution.txt b/Documentation/MyFirstContribution.txt
index 63a2ef5449..9cdb661271 100644
--- a/Documentation/MyFirstContribution.txt
+++ b/Documentation/MyFirstContribution.txt
@@ -1265,3 +1265,14 @@ against the appropriate GitGitGadget/Git branch.
 If you're using `git send-email`, you can use it the same way as before, but you
 should generate your diffs from `<topic>..<mybranch>` and base your work on
 `<topic>` instead of `master`.
+
+[[Bonus-useful-tools]]
+== Bonus - useful tools
+
+=== VS Code
+
+A script that creates the configuration files is available in contrib/vscode/init.sh. Useful links
+and explanation of how to use the script are available in contrib/vscode/README.md.
+Using the integrate debugger can be particularly helpful to understand how Git works internally.
+It can be used to isolate some parts of code, with this you may be able to ask more precises
+question when you are stuck. (See getting-help sections).
\ No newline at end of file
diff --git a/contrib/vscode/README.md b/contrib/vscode/README.md
index 8202d62035..f383c95e1f 100644
--- a/contrib/vscode/README.md
+++ b/contrib/vscode/README.md
@@ -6,7 +6,11 @@ code editor which runs on your desktop and is available for
 [Windows](https://code.visualstudio.com/docs/setup/windows),
 [macOS](https://code.visualstudio.com/docs/setup/mac) and
 [Linux](https://code.visualstudio.com/docs/setup/linux). Among other languages,
-it has [support for C/C++ via an extension](https://github.com/Microsoft/vscode-cpptools).
+it has [support for C/C++ via an extension](https://github.com/Microsoft/vscode-cpptools) with
+[debugging support](https://code.visualstudio.com/docs/editor/debugging)
+
+To get help about "how to personalize your settings" read:
+[How to set up your settings](https://code.visualstudio.com/docs/getstarted/settings)
 
 To start developing Git with VS Code, simply run the Unix shell script called
 `init.sh` in this directory, which creates the configuration files in
diff --git a/contrib/vscode/init.sh b/contrib/vscode/init.sh
index 27de94994b..f139fd8644 100755
--- a/contrib/vscode/init.sh
+++ b/contrib/vscode/init.sh
@@ -271,7 +271,6 @@ cat >.vscode/launch.json.new <<EOF ||
             "stopAtEntry": false,
             "cwd": "\${workspaceFolder}",
             "environment": [],
-            "externalConsole": true,
             "MIMode": "gdb",
             "miDebuggerPath": "$GDBPATH",
             "setupCommands": [
-- 
2.25.1
Previous: COGONI GuillaumeNext: Derrick Stolee
Message 14 of 24 in “contrib/vscode/: debugging with vscode and gdb”
  1. Jonathan BressatMar 24, 2022
  2. Derrick StoleeMar 25, 2022
  3. Matthieu MoyMar 25, 2022
  4. Derrick StoleeMar 25, 2022
  5. Jonathan BressatMar 26, 2022
  6. Guillaume CogoniApr 3, 2022
  7. Matthieu MoyApr 5, 2022
  8. 0/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 5, 2022
  9. 1/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 5, 2022
  10. Ævar Arnfjörð BjarmasonApr 6, 2022
  11. Matthieu MoyApr 6, 2022
  12. Matthieu MoyApr 6, 2022
  13. 0/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 6, 2022
  14. 1/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 6, 2022
  15. Derrick StoleeApr 6, 2022
  16. Junio C HamanoApr 6, 2022
  17. 0/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 6, 2022
  18. 1/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 6, 2022
  19. Ævar Arnfjörð BjarmasonApr 7, 2022
  20. Derrick StoleeApr 7, 2022
  21. Junio C HamanoApr 7, 2022
  22. 0/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 7, 2022
  23. 1/1 contrib/vscode/: debugging with VS Code and gdbCOGONI Guillaume, Apr 7, 2022
  24. Matthieu MoyApr 7, 2022

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.