#define REPOSITORY_H
struct config_set;
+struct git_hash_algo;
struct index_state;
+struct raw_object_store;
struct submodule_cache;
-struct git_hash_algo;
struct repository {
/* Environment */
char *commondir;
/*
- * Path to the repository's object store.
- * Cannot be NULL after initialization.
+ * Holds any information related to accessing the raw object content.
*/
- char *objectdir;
+ struct raw_object_store *objects;
- /* Path to extra alternate object database if not NULL */
- char *alternate_db;
+ /* The store in which the refs are held. */
+ struct ref_store *refs;
/*
* Path to the repository's graft file.
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);