t9000-t9999: fix broken &&-chains
[gitweb.git] / repository.h
index 09df94a4722dacc40ab106e3b3ca348167daa764..dba3ddbfdd2d48068d60100425d1a22025cd25b0 100644 (file)
@@ -26,6 +26,18 @@ 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;
+
        /*
         * Path to the repository's graft file.
         * Cannot be NULL after initialization.
@@ -97,6 +109,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);