]> asedeno.scripts.mit.edu Git - git.git/blob - builtin-runstatus.c
git-commit.sh: convert run_status to a C builtin
[git.git] / builtin-runstatus.c
1 #include "wt-status.h"
2 #include "cache.h"
3
4 extern int wt_status_use_color;
5
6 static const char runstatus_usage[] =
7 "git-runstatus [--color|--nocolor] [--amend] [--verbose]";
8
9 int cmd_runstatus(int argc, const char **argv, const char *prefix)
10 {
11         struct wt_status s;
12         int i;
13
14         git_config(git_status_config);
15         wt_status_prepare(&s);
16
17         for (i = 1; i < argc; i++) {
18                 if (!strcmp(argv[i], "--color"))
19                         wt_status_use_color = 1;
20                 else if (!strcmp(argv[i], "--nocolor"))
21                         wt_status_use_color = 0;
22                 else if (!strcmp(argv[i], "--amend")) {
23                         s.amend = 1;
24                         s.reference = "HEAD^1";
25                 }
26                 else if (!strcmp(argv[i], "--verbose"))
27                         s.verbose = 1;
28                 else
29                         usage(runstatus_usage);
30         }
31
32         wt_status_print(&s);
33         return s.commitable ? 0 : 1;
34 }