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