Home Explore Blog CI



git

Documentation/git-diagnose.adoc
40edc7f86cb31398c99c746593e4021e891358973ad1078800000003000008a0
git-diagnose(1)
================

NAME
----
git-diagnose - Generate a zip archive of diagnostic information

SYNOPSIS
--------
[verse]
'git diagnose' [(-o | --output-directory) <path>] [(-s | --suffix) <format>]
	       [--mode=<mode>]

DESCRIPTION
-----------
Collects detailed information about the user's machine, Git client, and
repository state and packages that information into a zip archive. The
generated archive can then, for example, be shared with the Git mailing list to
help debug an issue or serve as a reference for independent debugging.

By default, the following information is captured in the archive:

  * 'git version --build-options'
  * The path to the repository root
  * The available disk space on the filesystem
  * The name and size of each packfile, including those in alternate object
    stores
  * The total count of loose objects, as well as counts broken down by
    `.git/objects` subdirectory

Additional information can be collected by selecting a different diagnostic mode
using the `--mode` option.

This tool differs from linkgit:git-bugreport[1] in that it collects much more
detailed information with a greater focus on reporting the size and data shape
of repository contents.

OPTIONS
-------
-o <path>::
--output-directory <path>::
	Place the resulting diagnostics archive in `<path>` instead of the
	current directory.

-s <format>::
--suffix <format>::
	Specify an alternate suffix for the diagnostics archive name, to create
	a file named 'git-diagnostics-<formatted-suffix>'. This should take the
	form of a strftime(3) format string; the current local time will be
	used.

--mode=(stats|all)::
	Specify the type of diagnostics that should be collected. The default behavior
	of 'git diagnose' is equivalent to `--mode=stats`.
+
The `--mode=all` option collects everything included in `--mode=stats`, as well
as copies of `.git`, `.git/hooks`, `.git/info`, `.git/logs`, and
`.git/objects/info` directories. This additional information may be sensitive,
as it can be used to reconstruct the full contents of the diagnosed repository.
Users should exercise caution when sharing an archive generated with
`--mode=all`.

GIT
---
Part of the linkgit:git[1] suite

Chunks
389d25ea (1st chunk of `Documentation/git-diagnose.adoc`)
Title: Git Diagnose Command
Summary
The git-diagnose command generates a zip archive of diagnostic information about the user's machine, Git client, and repository state, which can be used for debugging purposes, including collecting detailed information such as Git version, repository root path, disk space, and object store data, with optional modes for customizing the level of detail collected.