summaryrefslogtreecommitdiff
path: root/bugreport.c
diff options
context:
space:
mode:
Diffstat (limited to 'bugreport.c')
-rw-r--r--bugreport.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/bugreport.c b/bugreport.c
index f6f53a5e8e..4cdb58bbaa 100644
--- a/bugreport.c
+++ b/bugreport.c
@@ -1,8 +1,17 @@
-#include "builtin.h"
+#include "cache.h"
#include "parse-options.h"
#include "stdio.h"
#include "strbuf.h"
#include "time.h"
+#include "help.h"
+
+static void get_system_info(struct strbuf *sys_info)
+{
+ /* get git version from native cmd */
+ strbuf_addstr(sys_info, _("git version:\n"));
+ get_version_info(sys_info, 1);
+ strbuf_complete_line(sys_info);
+}
static const char * const bugreport_usage[] = {
N_("git bugreport [-o|--output-directory <file>] [-s|--suffix <format>]"),
@@ -32,6 +41,11 @@ static int get_bug_template(struct strbuf *template)
return 0;
}
+static void get_header(struct strbuf *buf, const char *title)
+{
+ strbuf_addf(buf, "\n\n[%s]\n", title);
+}
+
int cmd_main(int argc, const char **argv)
{
struct strbuf buffer = STRBUF_INIT;
@@ -79,6 +93,9 @@ int cmd_main(int argc, const char **argv)
/* Prepare the report contents */
get_bug_template(&buffer);
+ get_header(&buffer, _("System Info"));
+ get_system_info(&buffer);
+
/* fopen doesn't offer us an O_EXCL alternative, except with glibc. */
report = open(report_path.buf, O_CREAT | O_EXCL | O_WRONLY, 0666);