You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.2 KiB
51 lines
1.2 KiB
#include "test-tool.h" |
|
#include "cache.h" |
|
#include "commit-graph.h" |
|
#include "repository.h" |
|
#include "object-store.h" |
|
|
|
int cmd__read_graph(int argc, const char **argv) |
|
{ |
|
struct commit_graph *graph = NULL; |
|
struct object_directory *odb; |
|
|
|
setup_git_directory(); |
|
odb = the_repository->objects->odb; |
|
|
|
prepare_repo_settings(the_repository); |
|
|
|
graph = read_commit_graph_one(the_repository, odb); |
|
if (!graph) |
|
return 1; |
|
|
|
printf("header: %08x %d %d %d %d\n", |
|
ntohl(*(uint32_t*)graph->data), |
|
*(unsigned char*)(graph->data + 4), |
|
*(unsigned char*)(graph->data + 5), |
|
*(unsigned char*)(graph->data + 6), |
|
*(unsigned char*)(graph->data + 7)); |
|
printf("num_commits: %u\n", graph->num_commits); |
|
printf("chunks:"); |
|
|
|
if (graph->chunk_oid_fanout) |
|
printf(" oid_fanout"); |
|
if (graph->chunk_oid_lookup) |
|
printf(" oid_lookup"); |
|
if (graph->chunk_commit_data) |
|
printf(" commit_metadata"); |
|
if (graph->chunk_generation_data) |
|
printf(" generation_data"); |
|
if (graph->chunk_generation_data_overflow) |
|
printf(" generation_data_overflow"); |
|
if (graph->chunk_extra_edges) |
|
printf(" extra_edges"); |
|
if (graph->chunk_bloom_indexes) |
|
printf(" bloom_indexes"); |
|
if (graph->chunk_bloom_data) |
|
printf(" bloom_data"); |
|
printf("\n"); |
|
|
|
UNLEAK(graph); |
|
|
|
return 0; |
|
}
|
|
|