struct strbuf loose_buf = STRBUF_INIT;
struct strbuf pack_buf = STRBUF_INIT;
struct strbuf garbage_buf = STRBUF_INIT;
- if (!get_packed_git(the_repository))
- prepare_packed_git(the_repository);
+
for (p = get_packed_git(the_repository); p; p = p->next) {
if (!p->pack_local)
continue;
uint32_t total = 0, count = 0;
struct progress *progress = NULL;
- prepare_packed_git(the_repository);
-
if (show_progress) {
for (p = get_packed_git(the_repository); p;
p = p->next) {
if (gc_auto_pack_limit <= 0)
return 0;
- prepare_packed_git(the_repository);
for (cnt = 0, p = get_packed_git(the_repository); p; p = p->next) {
if (!p->pack_local)
continue;
if (progress && all_progress_implied)
progress = 2;
- prepare_packed_git(the_repository);
if (ignore_packed_keep) {
struct packed_git *p;
for (p = get_packed_git(the_repository); p; p = p->next)
break;
}
- prepare_packed_git(the_repository);
-
if (load_all_packs)
load_all();
else
rc_free[i].next = &rc_free[i + 1];
rc_free[cmd_save - 1].next = NULL;
- prepare_packed_git(the_repository);
start_packfile();
set_die_routine(die_nicely);
set_checkpoint_signal();
size_t cnt = 0;
select_getanyfile(hdr);
- prepare_packed_git(the_repository);
for (p = get_packed_git(the_repository); p; p = p->next) {
if (p->pack_local)
cnt++;
assert(!bitmap_git.map && !bitmap_git.loaded);
- prepare_packed_git(the_repository);
for (p = get_packed_git(the_repository); p; p = p->next) {
if (open_pack_bitmap_1(p) == 0)
ret = 0;
strbuf_release(&path);
}
+static void prepare_packed_git(struct repository *r);
/*
* Give a fast, rough count of the number of objects in the repository. This
* ignores loose objects completely. If you have a lot of them, then either
list_add_tail(&p->mru, &r->objects->packed_git_mru);
}
-void prepare_packed_git(struct repository *r)
+static void prepare_packed_git(struct repository *r)
{
struct alternate_object_database *alt;
struct packed_git *get_packed_git(struct repository *r)
{
+ prepare_packed_git(r);
return r->objects->packed_git;
}
struct list_head *get_packed_git_mru(struct repository *r)
{
+ prepare_packed_git(r);
return &r->objects->packed_git_mru;
}
#define PACKDIR_FILE_GARBAGE 4
extern void (*report_garbage)(unsigned seen_bits, const char *path);
-extern void prepare_packed_git(struct repository *r);
extern void reprepare_packed_git(struct repository *r);
extern void install_packed_git(struct repository *r, struct packed_git *pack);
objdir = get_object_directory();
objdirlen = strlen(objdir);
- prepare_packed_git(the_repository);
for (p = get_packed_git(the_repository); p; p = p->next) {
/* we ignore things on alternate path since they are
* not available to the pullers in general.
{
struct packed_git *p;
- prepare_packed_git(the_repository);
for (p = get_packed_git(the_repository); p && !ds->ambiguous;
p = p->next)
unique_in_pack(p, ds);
{
struct packed_git *p;
- prepare_packed_git(the_repository);
for (p = get_packed_git(the_repository); p; p = p->next)
find_abbrev_len_for_pack(p, mad);
}