diff options
Diffstat (limited to 'repository.h')
-rw-r--r-- | repository.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/repository.h b/repository.h index 09df94a472..b9413be50c 100644 --- a/repository.h +++ b/repository.h @@ -27,6 +27,23 @@ struct repository { struct raw_object_store *objects; /* + * All objects in this repository that have been parsed. This structure + * owns all objects it references, so users of "struct object *" + * generally do not need to free them; instead, when a repository is no + * longer used, call parsed_object_pool_clear() on this structure, which + * is called by the repositories repo_clear on its desconstruction. + */ + struct parsed_object_pool *parsed_objects; + + /* The store in which the refs are held. */ + struct ref_store *refs; + + /* + * Contains path to often used file names. + */ + struct path_cache cached_paths; + + /* * Path to the repository's graft file. * Cannot be NULL after initialization. */ @@ -97,6 +114,9 @@ extern void repo_set_gitdir(struct repository *repo, extern void repo_set_worktree(struct repository *repo, const char *path); extern void repo_set_hash_algo(struct repository *repo, int algo); extern void initialize_the_repository(void); +extern int repo_init(struct repository *r, + const char *gitdir, + const char *worktree); extern int repo_submodule_init(struct repository *submodule, struct repository *superproject, const char *path); |