Browse Source

clone: detect extra arguments

If git clone is given more than two non-option arguments, it
silently throws away all but the first one.  Complain instead.

Discovered by comparing the new builtin clone to the old
git-clone.sh.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jonathan Nieder 16 years ago committed by Junio C Hamano
parent
commit
d52dc4b10b
  1. 7
      builtin-clone.c

7
builtin-clone.c

@ -379,8 +379,13 @@ int cmd_clone(int argc, const char **argv, const char *prefix) @@ -379,8 +379,13 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, builtin_clone_options,
builtin_clone_usage, 0);

if (argc > 2)
usage_msg_opt("Too many arguments.",
builtin_clone_usage, builtin_clone_options);

if (argc == 0)
die("You must specify a repository to clone.");
usage_msg_opt("You must specify a repository to clone.",
builtin_clone_usage, builtin_clone_options);

if (option_mirror)
option_bare = 1;

Loading…
Cancel
Save