summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Couder <chriscool@tuxfamily.org>2009-02-02 06:13:06 +0100
committerJunio C Hamano <gitster@pobox.com>2009-05-31 17:03:40 -0700
commit86af2caa5ac322b1ebda8b4f0aceb9dfafe3e5ba (patch)
tree81c1c4f2130f563cbfde5af4964ca73273458799
parent451bb210f81c10b60bf90403c9183be26beaaabf (diff)
downloadgit-86af2caa5ac322b1ebda8b4f0aceb9dfafe3e5ba.tar.gz
builtin-replace: use "usage_msg_opt" to give better error messages
Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--builtin-replace.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/builtin-replace.c b/builtin-replace.c
index 8220d6eb38..fe3a647a36 100644
--- a/builtin-replace.c
+++ b/builtin-replace.c
@@ -124,30 +124,36 @@ int cmd_replace(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, options, git_replace_usage, 0);
if (list && delete)
- usage_with_options(git_replace_usage, options);
+ usage_msg_opt("-l and -d cannot be used together",
+ git_replace_usage, options);
if (force && (list || delete))
- usage_with_options(git_replace_usage, options);
+ usage_msg_opt("-f cannot be used with -d or -l",
+ git_replace_usage, options);
/* Delete refs */
if (delete) {
if (argc < 1)
- usage_with_options(git_replace_usage, options);
+ usage_msg_opt("-d needs at least one argument",
+ git_replace_usage, options);
return for_each_replace_name(argv, delete_replace_ref);
}
/* Replace object */
if (!list && argc) {
if (argc != 2)
- usage_with_options(git_replace_usage, options);
+ usage_msg_opt("bad number of arguments",
+ git_replace_usage, options);
return replace_object(argv[0], argv[1], force);
}
/* List refs, even if "list" is not set */
if (argc > 1)
- usage_with_options(git_replace_usage, options);
+ usage_msg_opt("only one pattern can be given with -l",
+ git_replace_usage, options);
if (force)
- usage_with_options(git_replace_usage, options);
+ usage_msg_opt("-f needs some arguments",
+ git_replace_usage, options);
return list_replace_refs(argv[0]);
}