]>
Commit | Line | Data |
---|---|---|
6eb8ae00 DB |
1 | #ifndef COMMIT_H |
2 | #define COMMIT_H | |
3 | ||
4 | #include "object.h" | |
5 | #include "tree.h" | |
6 | ||
7 | struct commit_list { | |
8 | struct commit *item; | |
9 | struct commit_list *next; | |
10 | }; | |
11 | ||
12 | struct commit { | |
13 | struct object object; | |
14 | unsigned long date; | |
15 | struct commit_list *parents; | |
16 | struct tree *tree; | |
17 | }; | |
18 | ||
19 | extern const char *commit_type; | |
20 | ||
21 | struct commit *lookup_commit(unsigned char *sha1); | |
961784ee | 22 | struct commit *lookup_commit_reference(unsigned char *sha1); |
6eb8ae00 | 23 | |
bd2c39f5 NP |
24 | int parse_commit_buffer(struct commit *item, void *buffer, unsigned long size); |
25 | ||
6eb8ae00 DB |
26 | int parse_commit(struct commit *item); |
27 | ||
dd97f850 DB |
28 | void commit_list_insert(struct commit *item, struct commit_list **list_p); |
29 | ||
6eb8ae00 DB |
30 | void free_commit_list(struct commit_list *list); |
31 | ||
dd97f850 DB |
32 | void sort_by_date(struct commit_list **list); |
33 | ||
34 | /** Removes the first commit from a list sorted by date, and adds all | |
35 | * of its parents. | |
36 | **/ | |
58e28af6 DB |
37 | struct commit *pop_most_recent_commit(struct commit_list **list, |
38 | unsigned int mark); | |
dd97f850 | 39 | |
6eb8ae00 | 40 | #endif /* COMMIT_H */ |