The "unbundle" command added in 2e0afafebd8 (Add git-bundle: move objects and references by archive, 2007-02-22) did not show progress output, even though the underlying API learned how to show progress in be042aff24c (Teach progress eye-candy to fetch_refs_from_bundle(), 2011-09-18). Now we'll show "Unbundling objects" using the new --progress-title option to "git index-pack", to go with its existing "Receiving objects" and "Indexing objects" (which it shows when invoked with "--stdin", and with a pack file, respectively). Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> --- builtin/bundle.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/builtin/bundle.c b/builtin/bundle.c index 10f6f45770..f027cce3fe 100644 --- a/builtin/bundle.c +++ b/builtin/bundle.c @@ -162,7 +162,11 @@ static int cmd_bundle_unbundle(int argc, const char **argv, const char *prefix) struct bundle_header header = BUNDLE_HEADER_INIT; int bundle_fd = -1; int ret; + int progress = isatty(2); + struct option options[] = { + OPT_BOOL(0, "progress", &progress, + N_("show progress meter")), OPT_END() }; char* bundle_file; @@ -178,6 +182,13 @@ static int cmd_bundle_unbundle(int argc, const char **argv, const char *prefix) } if (!startup_info->have_repository) die(_("Need a repository to unbundle.")); + + if (progress) { + strvec_push(&extra_args, "-v"); + strvec_push(&extra_args, "--progress-title"); + strvec_push(&extra_args, _("Unbundling objects")); + } + ret = !!unbundle(the_repository, &header, bundle_fd, &extra_args) || list_bundle_refs(&header, argc, argv); bundle_header_release(&header); -- 2.32.0.988.g189fd9ae38