git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 3/4] verify-pack: migrate to parse-options

From
Stephen Boyd <bebarino@gmail.com>
Date
Jul 8, 2009, 05:15 UTC
Message-ID
<1247030141-11695-4-git-send-email-bebarino@gmail.com>
In-Reply-To
<1247030141-11695-3-git-send-email-bebarino@gmail.com>
OPT__VERBOSE adds a --verbose option, so document the new addition.
Signed-off-by: Stephen Boyd <bebarino@gmail.com>
---
 Documentation/git-verify-pack.txt |    3 +-
 builtin-verify-pack.c             |   40 ++++++++++++++++--------------------
 2 files changed, 20 insertions(+), 23 deletions(-)
diff --git a/Documentation/git-verify-pack.txt b/Documentation/git-verify-pack.txt
index c861163..d791a80 100644
--- a/Documentation/git-verify-pack.txt
+++ b/Documentation/git-verify-pack.txt
@@ -8,7 +8,7 @@ git-verify-pack - Validate packed git archive files
 
 SYNOPSIS
 --------
-'git verify-pack' [-v] [--] <pack>.idx ...
+'git verify-pack' [-v|--verbose] [--] <pack>.idx ...
 
 
 DESCRIPTION
@@ -23,6 +23,7 @@ OPTIONS
 	The idx files to verify.
 
 -v::
+--verbose::
 	After verifying the pack, show list of objects contained
 	in the pack.
 \--::
diff --git a/builtin-verify-pack.c b/builtin-verify-pack.c
index 0ee0a9a..ebd6dff 100644
--- a/builtin-verify-pack.c
+++ b/builtin-verify-pack.c
@@ -2,6 +2,7 @@
 #include "cache.h"
 #include "pack.h"
 #include "pack-revindex.h"
+#include "parse-options.h"
 
 #define MAX_CHAIN 50
 
@@ -107,36 +108,31 @@ static int verify_one_pack(const char *path, int verbose)
 	return err;
 }
 
-static const char verify_pack_usage[] = "git verify-pack [-v] <pack>...";
+static const char * const verify_pack_usage[] = {
+	"git verify-pack [-v|--verbose] <pack>...",
+	NULL
+};
 
 int cmd_verify_pack(int argc, const char **argv, const char *prefix)
 {
 	int err = 0;
 	int verbose = 0;
-	int no_more_options = 0;
-	int nothing_done = 1;
+	int i;
+	const struct option verify_pack_options[] = {
+		OPT__VERBOSE(&verbose),
+		OPT_END()
+	};
 
 	git_config(git_default_config, NULL);
-	while (1 < argc) {
-		if (!no_more_options && argv[1][0] == '-') {
-			if (!strcmp("-v", argv[1]))
-				verbose = 1;
-			else if (!strcmp("--", argv[1]))
-				no_more_options = 1;
-			else
-				usage(verify_pack_usage);
-		}
-		else {
-			if (verify_one_pack(argv[1], verbose))
-				err = 1;
-			discard_revindex();
-			nothing_done = 0;
-		}
-		argc--; argv++;
+	argc = parse_options(argc, argv, prefix, verify_pack_options,
+			     verify_pack_usage, 0);
+	if (argc < 1)
+		usage_with_options(verify_pack_usage, verify_pack_options);
+	for (i = 0; i < argc; i++) {
+		if (verify_one_pack(argv[i], verbose))
+			err = 1;
+		discard_revindex();
 	}
 
-	if (nothing_done)
-		usage(verify_pack_usage);
-
 	return err;
 }
-- 
1.6.3.3.385.g60647
Previous: Stephen BoydNext: Stephen Boyd
Message 4 of 9 in “Migrate simple builtins to parse-options”
  1. 0/4 Migrate simple builtins to parse-optionsStephen Boyd, Jul 8, 2009
  2. 1/4 write-tree: migrate to parse-optionsStephen Boyd, Jul 8, 2009
  3. 2/4 tag-verify: migrate to parse-optionsStephen Boyd, Jul 8, 2009
  4. 3/4 verify-pack: migrate to parse-optionsStephen Boyd, Jul 8, 2009
  5. 4/4 prune-packed: migrate to parse-optionsStephen Boyd, Jul 8, 2009
  6. Johannes SchindelinJul 9, 2009
  7. Stephen BoydJul 9, 2009
  8. Stephen BoydJul 9, 2009
  9. Stephen BoydJul 9, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.