index-pack: fix race condition with duplicate bases
[git] / fetch-pack.h
1 #ifndef FETCH_PACK_H
2 #define FETCH_PACK_H
3
4 #include "string-list.h"
5 #include "run-command.h"
6
7 struct fetch_pack_args {
8         const char *uploadpack;
9         int unpacklimit;
10         int depth;
11         unsigned quiet:1,
12                 keep_pack:1,
13                 lock_pack:1,
14                 use_thin_pack:1,
15                 fetch_all:1,
16                 stdin_refs:1,
17                 diag_url:1,
18                 verbose:1,
19                 no_progress:1,
20                 include_tag:1,
21                 stateless_rpc:1,
22                 check_self_contained_and_connected:1,
23                 self_contained_and_connected:1;
24 };
25
26 /*
27  * sought represents remote references that should be updated from.
28  * On return, the names that were found on the remote will have been
29  * marked as such.
30  */
31 struct ref *fetch_pack(struct fetch_pack_args *args,
32                        int fd[], struct child_process *conn,
33                        const struct ref *ref,
34                        const char *dest,
35                        struct ref **sought,
36                        int nr_sought,
37                        char **pack_lockfile);
38
39 #endif