wt-status.hon commit wt-status.c: rework the way changes to the index and work tree are summarized (50b7e70)
   1#ifndef STATUS_H
   2#define STATUS_H
   3
   4#include <stdio.h>
   5#include "string-list.h"
   6
   7enum color_wt_status {
   8        WT_STATUS_HEADER,
   9        WT_STATUS_UPDATED,
  10        WT_STATUS_CHANGED,
  11        WT_STATUS_UNTRACKED,
  12        WT_STATUS_NOBRANCH,
  13};
  14
  15enum untracked_status_type {
  16        SHOW_NO_UNTRACKED_FILES,
  17        SHOW_NORMAL_UNTRACKED_FILES,
  18        SHOW_ALL_UNTRACKED_FILES
  19};
  20extern enum untracked_status_type show_untracked_files;
  21
  22struct wt_status_change_data {
  23        int worktree_status;
  24        int index_status;
  25        int stagemask;
  26        char *head_path;
  27};
  28
  29struct wt_status {
  30        int is_initial;
  31        char *branch;
  32        const char *reference;
  33        int verbose;
  34        int amend;
  35        int untracked;
  36        int nowarn;
  37        /* These are computed during processing of the individual sections */
  38        int commitable;
  39        int workdir_dirty;
  40        int workdir_untracked;
  41        const char *index_file;
  42        FILE *fp;
  43        const char *prefix;
  44        struct string_list change;
  45};
  46
  47int git_status_config(const char *var, const char *value, void *cb);
  48extern int wt_status_use_color;
  49extern int wt_status_relative_paths;
  50void wt_status_prepare(struct wt_status *s);
  51void wt_status_print(struct wt_status *s);
  52void wt_status_collect_changes(struct wt_status *s);
  53
  54#endif /* STATUS_H */