about summary refs log tree commit diff
path: root/third_party/git/builtin/prune-packed.c
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/builtin/prune-packed.c')
-rw-r--r--third_party/git/builtin/prune-packed.c73
1 files changed, 0 insertions, 73 deletions
diff --git a/third_party/git/builtin/prune-packed.c b/third_party/git/builtin/prune-packed.c
deleted file mode 100644
index 48c5e78e33..0000000000
--- a/third_party/git/builtin/prune-packed.c
+++ /dev/null
@@ -1,73 +0,0 @@
-#include "builtin.h"
-#include "cache.h"
-#include "progress.h"
-#include "parse-options.h"
-#include "packfile.h"
-#include "object-store.h"
-
-static const char * const prune_packed_usage[] = {
-	N_("git prune-packed [-n | --dry-run] [-q | --quiet]"),
-	NULL
-};
-
-static struct progress *progress;
-
-static int prune_subdir(unsigned int nr, const char *path, void *data)
-{
-	int *opts = data;
-	display_progress(progress, nr + 1);
-	if (!(*opts & PRUNE_PACKED_DRY_RUN))
-		rmdir(path);
-	return 0;
-}
-
-static int prune_object(const struct object_id *oid, const char *path,
-			 void *data)
-{
-	int *opts = data;
-
-	if (!has_object_pack(oid))
-		return 0;
-
-	if (*opts & PRUNE_PACKED_DRY_RUN)
-		printf("rm -f %s\n", path);
-	else
-		unlink_or_warn(path);
-	return 0;
-}
-
-void prune_packed_objects(int opts)
-{
-	if (opts & PRUNE_PACKED_VERBOSE)
-		progress = start_delayed_progress(_("Removing duplicate objects"), 256);
-
-	for_each_loose_file_in_objdir(get_object_directory(),
-				      prune_object, NULL, prune_subdir, &opts);
-
-	/* Ensure we show 100% before finishing progress */
-	display_progress(progress, 256);
-	stop_progress(&progress);
-}
-
-int cmd_prune_packed(int argc, const char **argv, const char *prefix)
-{
-	int opts = isatty(2) ? PRUNE_PACKED_VERBOSE : 0;
-	const struct option prune_packed_options[] = {
-		OPT_BIT('n', "dry-run", &opts, N_("dry run"),
-			PRUNE_PACKED_DRY_RUN),
-		OPT_NEGBIT('q', "quiet", &opts, N_("be quiet"),
-			   PRUNE_PACKED_VERBOSE),
-		OPT_END()
-	};
-
-	argc = parse_options(argc, argv, prefix, prune_packed_options,
-			     prune_packed_usage, 0);
-
-	if (argc > 0)
-		usage_msg_opt(_("too many arguments"),
-			      prune_packed_usage,
-			      prune_packed_options);
-
-	prune_packed_objects(opts);
-	return 0;
-}