Add config variable core.symrefsonly
[git.git] / rev-parse.c
index 85230df..5a98982 100644 (file)
@@ -34,6 +34,7 @@ static int is_rev_argument(const char *arg)
        static const char *rev_args[] = {
                "--all",
                "--bisect",
+               "--dense",
                "--header",
                "--max-age=",
                "--max-count=",
@@ -44,6 +45,7 @@ static int is_rev_argument(const char *arg)
                "--parents",
                "--pretty",
                "--show-breaks",
+               "--sparse",
                "--topo-order",
                "--unpacked",
                NULL
@@ -153,6 +155,7 @@ static void show_datestring(const char *flag, const char *datestr)
 
 static void show_file(const char *arg)
 {
+       show_default();
        if ((filter & (DO_NONFLAGS|DO_NOREV)) == (DO_NONFLAGS|DO_NOREV))
                show(arg);
 }
@@ -174,6 +177,9 @@ int main(int argc, char **argv)
                if (*arg == '-') {
                        if (!strcmp(arg, "--")) {
                                as_is = 1;
+                               /* Pass on the "--" if we show anything but files.. */
+                               if (filter & (DO_FLAGS | DO_REVS))
+                                       show_file(arg);
                                continue;
                        }
                        if (!strcmp(arg, "--default")) {
@@ -288,6 +294,7 @@ int main(int argc, char **argv)
                }
                if (verify)
                        die("Needed a single revision");
+               as_is = 1;
                show_file(arg);
        }
        show_default();