| 1 | git-diagnose(1) |
| 2 | ================ |
| 3 | |
| 4 | NAME |
| 5 | ---- |
| 6 | git-diagnose - Generate a zip archive of diagnostic information |
| 7 | |
| 8 | SYNOPSIS |
| 9 | -------- |
| 10 | [verse] |
| 11 | 'git diagnose' [(-o | --output-directory) <path>] [(-s | --suffix) <format>] |
| 12 | [--mode=<mode>] |
| 13 | |
| 14 | DESCRIPTION |
| 15 | ----------- |
| 16 | Collects detailed information about the user's machine, Git client, and |
| 17 | repository state and packages that information into a zip archive. The |
| 18 | generated archive can then, for example, be shared with the Git mailing list to |
| 19 | help debug an issue or serve as a reference for independent debugging. |
| 20 | |
| 21 | By default, the following information is captured in the archive: |
| 22 | |
| 23 | * 'git version --build-options' |
| 24 | * The path to the repository root |
| 25 | * The available disk space on the filesystem |
| 26 | * The name and size of each packfile, including those in alternate object |
| 27 | stores |
| 28 | * The total count of loose objects, as well as counts broken down by |
| 29 | `.git/objects` subdirectory |
| 30 | |
| 31 | Additional information can be collected by selecting a different diagnostic mode |
| 32 | using the `--mode` option. |
| 33 | |
| 34 | This tool differs from linkgit:git-bugreport[1] in that it collects much more |
| 35 | detailed information with a greater focus on reporting the size and data shape |
| 36 | of repository contents. |
| 37 | |
| 38 | OPTIONS |
| 39 | ------- |
| 40 | -o <path>:: |
| 41 | --output-directory <path>:: |
| 42 | Place the resulting diagnostics archive in `<path>` instead of the |
| 43 | current directory. |
| 44 | |
| 45 | -s <format>:: |
| 46 | --suffix <format>:: |
| 47 | Specify an alternate suffix for the diagnostics archive name, to create |
| 48 | a file named 'git-diagnostics-<formatted-suffix>'. This should take the |
| 49 | form of a strftime(3) format string; the current local time will be |
| 50 | used. |
| 51 | |
| 52 | --mode=(stats|all):: |
| 53 | Specify the type of diagnostics that should be collected. The default behavior |
| 54 | of 'git diagnose' is equivalent to `--mode=stats`. |
| 55 | + |
| 56 | The `--mode=all` option collects everything included in `--mode=stats`, as well |
| 57 | as copies of `.git`, `.git/hooks`, `.git/info`, `.git/logs`, and |
| 58 | `.git/objects/info` directories. This additional information may be sensitive, |
| 59 | as it can be used to reconstruct the full contents of the diagnosed repository. |
| 60 | Users should exercise caution when sharing an archive generated with |
| 61 | `--mode=all`. |
| 62 | |
| 63 | GIT |
| 64 | --- |
| 65 | Part of the linkgit:git[1] suite |