]>
Commit | Line | Data |
---|---|---|
8133061e | 1 | #include "test-tool.h" |
3e52f70b NTND |
2 | #include "cache.h" |
3 | #include "split-index.h" | |
4 | #include "ewah/ewok.h" | |
5 | ||
6 | static void show_bit(size_t pos, void *data) | |
7 | { | |
8 | printf(" %d", (int)pos); | |
9 | } | |
10 | ||
8133061e | 11 | int cmd__dump_split_index(int ac, const char **av) |
3e52f70b NTND |
12 | { |
13 | struct split_index *si; | |
14 | int i; | |
15 | ||
6946e525 | 16 | setup_git_directory(); |
17 | ||
3e52f70b | 18 | do_read_index(&the_index, av[1], 1); |
75691ea3 | 19 | printf("own %s\n", oid_to_hex(&the_index.oid)); |
3e52f70b NTND |
20 | si = the_index.split_index; |
21 | if (!si) { | |
22 | printf("not a split index\n"); | |
23 | return 0; | |
24 | } | |
2182abd9 | 25 | printf("base %s\n", oid_to_hex(&si->base_oid)); |
3e52f70b NTND |
26 | for (i = 0; i < the_index.cache_nr; i++) { |
27 | struct cache_entry *ce = the_index.cache[i]; | |
28 | printf("%06o %s %d\t%s\n", ce->ce_mode, | |
99d1a986 | 29 | oid_to_hex(&ce->oid), ce_stage(ce), ce->name); |
3e52f70b NTND |
30 | } |
31 | printf("replacements:"); | |
475a3445 DT |
32 | if (si->replace_bitmap) |
33 | ewah_each_bit(si->replace_bitmap, show_bit, NULL); | |
3e52f70b | 34 | printf("\ndeletions:"); |
475a3445 DT |
35 | if (si->delete_bitmap) |
36 | ewah_each_bit(si->delete_bitmap, show_bit, NULL); | |
3e52f70b NTND |
37 | printf("\n"); |
38 | return 0; | |
39 | } |