aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmily Shaffer <emilyshaffer@google.com>2020-05-12 16:42:13 -0700
committerJunio C Hamano <gitster@pobox.com>2020-05-12 22:02:20 -0700
commit4a4804edf4d5f96407fc46eda802a3b29d991e33 (patch)
tree147a4c1cc84b5f59b9567af7f7d85c3a7dbbfb82
parenthelp: add shell-path to --build-options (diff)
downloadgit-4a4804edf4d5f96407fc46eda802a3b29d991e33.tar.gz
git-4a4804edf4d5f96407fc46eda802a3b29d991e33.zip
bugreport: include user interactive shell
It's possible a user may complain about the way that Git interacts with their interactive shell, e.g. autocompletion or shell prompt. In that case, it's useful for us to know which shell they're using interactively. Signed-off-by: Emily Shaffer <emilyshaffer@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Documentation/git-bugreport.txt1
-rw-r--r--bugreport.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/Documentation/git-bugreport.txt b/Documentation/git-bugreport.txt
index 7fe9aef34e..4afc48c452 100644
--- a/Documentation/git-bugreport.txt
+++ b/Documentation/git-bugreport.txt
@@ -29,6 +29,7 @@ The following information is captured automatically:
- uname sysname, release, version, and machine strings
- Compiler-specific info string
- A list of enabled hooks
+ - $SHELL
This tool is invoked via the typical Git setup process, which means that in some
cases, it might not be able to launch - for example, if a relevant config file
diff --git a/bugreport.c b/bugreport.c
index aa8a489c35..28f4568b01 100644
--- a/bugreport.c
+++ b/bugreport.c
@@ -9,6 +9,7 @@
static void get_system_info(struct strbuf *sys_info)
{
struct utsname uname_info;
+ char *shell = NULL;
/* get git version from native cmd */
strbuf_addstr(sys_info, _("git version:\n"));
@@ -29,8 +30,13 @@ static void get_system_info(struct strbuf *sys_info)
strbuf_addstr(sys_info, _("compiler info: "));
get_compiler_info(sys_info);
+
strbuf_addstr(sys_info, _("libc info: "));
get_libc_info(sys_info);
+
+ shell = getenv("SHELL");
+ strbuf_addf(sys_info, "$SHELL (typically, interactive shell): %s\n",
+ shell ? shell : "<unset>");
}
static void get_populated_hooks(struct strbuf *hook_info, int nongit)