} diff_type;
typedef enum {
- ABOUT, COMMIT, SOURCE, EMAIL, AUTH
+ ABOUT, COMMIT, SOURCE, EMAIL, AUTH, OWNER
} filter_type;
struct cgit_filter {
struct cgit_filter *commit_filter;
struct cgit_filter *source_filter;
struct cgit_filter *email_filter;
+ struct cgit_filter *owner_filter;
struct string_list submodules;
+ int hide;
+ int ignore;
};
typedef void (*repo_config_fn)(struct cgit_repo *repo, const char *name,
int show_all;
int context;
int ignorews;
+ int follow;
char *vpath;
};
int case_sensitive_sort;
int embedded;
int enable_filter_overrides;
+ int enable_follow_links;
int enable_http_clone;
int enable_index_links;
int enable_index_owner;
struct cgit_filter *commit_filter;
struct cgit_filter *source_filter;
struct cgit_filter *email_filter;
+ struct cgit_filter *owner_filter;
struct cgit_filter *auth_filter;
};
extern void cgit_add_ref(struct reflist *list, struct refinfo *ref);
extern void cgit_free_reflist_inner(struct reflist *list);
-extern int cgit_refs_cb(const char *refname, const unsigned char *sha1,
+extern int cgit_refs_cb(const char *refname, const struct object_id *oid,
int flags, void *cb_data);
extern void *cgit_free_commitinfo(struct commitinfo *info);
+void cgit_diff_tree_cb(struct diff_queue_struct *q,
+ struct diff_options *options, void *data);
+
extern int cgit_diff_files(const unsigned char *old_sha1,
const unsigned char *new_sha1,
unsigned long *old_size, unsigned long *new_size,