Add the experimental git survey command to analyze (large) local repositories (#667)

This command is inspired by [`git
sizer`](https://github.com/github/git-sizer), having the advantage of
being much closer to the internals of Git.

The intention is to provide a built-in command that can be used to
analyze large repositories for performance and scaling problems, for
growth over time, and to correlate with other measurements (in
particular with Trace2 data collected e.g. via
https://github.com/git-ecosystem/trace2receiver/).
This commit is contained in:
Johannes Schindelin 2024-07-02 10:51:09 +02:00 коммит произвёл Johannes Schindelin
Родитель 49dc873c12 3be470ab8f
Коммит e0f286003c
1 изменённых файлов: 5 добавлений и 0 удалений

Просмотреть файл

@ -18,6 +18,7 @@
#include "trace2.h"
#include "tree.h"
#include "tree-walk.h"
#include "color.h"
static const char * const survey_usage[] = {
N_("(EXPERIMENTAL!) git survey <options>"),
@ -2265,6 +2266,10 @@ int cmd_survey(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, survey_options, survey_usage, 0);
color_fprintf_ln(stderr,
want_color_fd(2, GIT_COLOR_AUTO) ? GIT_COLOR_YELLOW : "",
"(THIS IS EXPERIMENTAL, EXPECT THE OUTPUT FORMAT TO CHANGE!)");
prepare_repo_settings(the_repository);
if (survey_opts.show_progress < 0)