rev-list: allow -n<n> as shorthand for --max-count=<n>
authorEric Wong <normalperson@yhbt.net>
Mon, 30 Jan 2006 00:26:40 +0000 (16:26 -0800)
committerJunio C Hamano <junkio@cox.net>
Wed, 1 Feb 2006 00:23:03 +0000 (16:23 -0800)
Both -n<n> and -n <n> are supported.  POSIX versions of head(1) and
tail(1) allow their line limits to be parsed this way.  I find
--max-count to be a commonly used option, and also similar in spirit to
head/tail, so I decided to make life easier on my worn out (and lazy :)
fingers with this patch.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
rev-list.c
rev-parse.c

index 0b142c1a6f79bf12901da71ca4e336cc32488171..45657552177a588a53ff77393c46094da2249798 100644 (file)
@@ -749,6 +749,16 @@ int main(int argc, const char **argv)
                struct commit *commit;
                unsigned char sha1[20];
 
+               if (!strcmp(arg, "-n")) {
+                       if (++i >= argc)
+                               die("-n requires an argument");
+                       max_count = atoi(argv[i]);
+                       continue;
+               }
+               if (!strncmp(arg,"-n",2)) {
+                       max_count = atoi(arg + 2);
+                       continue;
+               }
                if (!strncmp(arg, "--max-count=", 12)) {
                        max_count = atoi(arg + 12);
                        continue;
index d2f086432b0b709c9c8c5f2b8c6c15a9ddb59e29..3c99a79eb354036137a28cc586ca58555f6162bc 100644 (file)
@@ -165,6 +165,21 @@ int main(int argc, char **argv)
                        show_file(arg);
                        continue;
                }
+               if (!strcmp(arg,"-n")) {
+                       if (++i >= argc)
+                               die("-n requires an argument");
+                       if ((filter & DO_FLAGS) && (filter & DO_REVS)) {
+                               show(arg);
+                               show(argv[i]);
+                       }
+                       continue;
+               }
+               if (!strncmp(arg,"-n",2)) {
+                       if ((filter & DO_FLAGS) && (filter & DO_REVS))
+                               show(arg);
+                       continue;
+               }
+
                if (*arg == '-') {
                        if (!strcmp(arg, "--")) {
                                as_is = 1;