Permalink
Cannot retrieve contributors at this time
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
51 lines (42 sloc)
1.35 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef PROMISOR_REMOTE_H | |
#define PROMISOR_REMOTE_H | |
#include "repository.h" | |
struct object_id; | |
/* | |
* Promisor remote linked list | |
* | |
* Information in its fields come from remote.XXX config entries or | |
* from extensions.partialclone. | |
*/ | |
struct promisor_remote { | |
struct promisor_remote *next; | |
const char *partial_clone_filter; | |
const char name[FLEX_ARRAY]; | |
}; | |
void repo_promisor_remote_reinit(struct repository *r); | |
static inline void promisor_remote_reinit(void) | |
{ | |
repo_promisor_remote_reinit(the_repository); | |
} | |
void promisor_remote_clear(struct promisor_remote_config *config); | |
struct promisor_remote *repo_promisor_remote_find(struct repository *r, const char *remote_name); | |
static inline struct promisor_remote *promisor_remote_find(const char *remote_name) | |
{ | |
return repo_promisor_remote_find(the_repository, remote_name); | |
} | |
int repo_has_promisor_remote(struct repository *r); | |
static inline int has_promisor_remote(void) | |
{ | |
return repo_has_promisor_remote(the_repository); | |
} | |
/* | |
* Fetches all requested objects from all promisor remotes, trying them one at | |
* a time until all objects are fetched. Returns 0 upon success, and non-zero | |
* otherwise. | |
* | |
* If oid_nr is 0, this function returns 0 (success) immediately. | |
*/ | |
int promisor_remote_get_direct(struct repository *repo, | |
const struct object_id *oids, | |
int oid_nr); | |
#endif /* PROMISOR_REMOTE_H */ |