Signed-off-by: Pierre Habouzit <madcoder@debian.org>
---
builtin-symbolic-ref.c | 54 +++++++++++++++++------------------------------
1 files changed, 20 insertions(+), 34 deletions(-)
diff --git a/builtin-symbolic-ref.c b/builtin-symbolic-ref.c
index 9eb95e5..c5e5173 100644
--- a/builtin-symbolic-ref.c
+++ b/builtin-symbolic-ref.c
@@ -1,9 +1,12 @@
#include "builtin.h"
#include "cache.h"
#include "refs.h"
+#include "parse-options.h"
-static const char git_symbolic_ref_usage[] =
-"git-symbolic-ref [-q] [-m <reason>] name [ref]";
+static const char * const git_symbolic_ref_usage[] = {
+ "git-symbolic-ref [options] name [ref]",
+ NULL
+};
static void check_symref(const char *HEAD, int quiet)
{
@@ -26,44 +29,27 @@ int cmd_symbolic_ref(int argc, const char **argv, const char *prefix)
{
int quiet = 0;
const char *msg = NULL;
+ struct option git_symbolic_ref_options[] = {
+ OPT_BOOLEAN('q', "quiet", &quiet, "do not issue errors"),
+ OPT_STRING( 'm', NULL, &msg, "reason", "reason of the update"),
+ };
git_config(git_default_config);
-
- while (1 < argc) {
- const char *arg = argv[1];
- if (arg[0] != '-')
- break;
- else if (!strcmp("-q", arg))
- quiet = 1;
- else if (!strcmp("-m", arg)) {
- argc--;
- argv++;
- if (argc <= 1)
- break;
- msg = argv[1];
- if (!*msg)
- die("Refusing to perform update with empty message");
- }
- else if (!strcmp("--", arg)) {
- argc--;
- argv++;
- break;
- }
- else
- die("unknown option %s", arg);
- argc--;
- argv++;
- }
-
+ argc = parse_options(argc, argv, git_symbolic_ref_options,
+ ARRAY_SIZE(git_symbolic_ref_options),
+ git_symbolic_ref_usage, 0);
+ if (msg &&!*msg)
+ die("Refusing to perform update with empty message");
switch (argc) {
- case 2:
- check_symref(argv[1], quiet);
+ case 1:
+ check_symref(argv[0], quiet);
break;
- case 3:
- create_symref(argv[1], argv[2], msg);
+ case 2:
+ create_symref(argv[0], argv[1], msg);
break;
default:
- usage(git_symbolic_ref_usage);
+ make_usage(git_symbolic_ref_usage, git_symbolic_ref_options,
+ ARRAY_SIZE(git_symbolic_ref_options));
}
return 0;
}
--
1.5.3.GIT
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html| James Bottomley | Breakage caused by unreviewed patch in x86 tree |
| Andrew Morton | Re: POHMELFS high performance network filesystem. Transactions, failover, performa... |
| Randy Dunlap | Re: 2.6.25-rc5-mm1 (paravirt/vsmp/no PCI) |
| Arnd Hannemann | 2.6.24-rc8 hangs at mfgpt-timer |
| Theodore Ts'o | Re: SVGA-alphanum. modes |
| Joseph R. Pannon | More install questions |
| Paul Richards | Header files |
| Les Andrzejewski | X386/WD90C31/SUMSUNG SYNC MASTER 4 |
git: | |
| David Miller | Re: [BUG] New Kernel Bugs |
| David Miller | Re: iptables very slow after commit784544739a25c30637397ace5489eeb6e15d7d49 |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
