Merge branch 'bc/push-cas-cquoted-refname' into master
[git] / bundle.h
1 #ifndef BUNDLE_H
2 #define BUNDLE_H
3
4 #include "argv-array.h"
5 #include "cache.h"
6
7 struct ref_list {
8         unsigned int nr, alloc;
9         struct ref_list_entry {
10                 struct object_id oid;
11                 char *name;
12         } *list;
13 };
14
15 struct bundle_header {
16         struct ref_list prerequisites;
17         struct ref_list references;
18         const struct git_hash_algo *hash_algo;
19 };
20
21 int is_bundle(const char *path, int quiet);
22 int read_bundle_header(const char *path, struct bundle_header *header);
23 int create_bundle(struct repository *r, const char *path,
24                   int argc, const char **argv, struct argv_array *pack_options);
25 int verify_bundle(struct repository *r, struct bundle_header *header, int verbose);
26 #define BUNDLE_VERBOSE 1
27 int unbundle(struct repository *r, struct bundle_header *header,
28              int bundle_fd, int flags);
29 int list_bundle_refs(struct bundle_header *header,
30                 int argc, const char **argv);
31
32 #endif