summaryrefslogtreecommitdiff
path: root/upload-pack.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2018-05-08 15:59:15 +0900
committerJunio C Hamano <gitster@pobox.com>2018-05-08 15:59:16 +0900
commit9bfa0f9be3e718f701200a242ea04259a4dc4dfc (patch)
treede7d4b20b93c6d80a347a0841de56ff6bedf502e /upload-pack.h
parent1f1cddd558b54bb0ce19c8ace353fd07b758510d (diff)
parenta4d78ce26bf4816d868be21c7355d0e0940460a7 (diff)
Merge branch 'bw/protocol-v2'
The beginning of the next-gen transfer protocol. * bw/protocol-v2: (35 commits) remote-curl: don't request v2 when pushing remote-curl: implement stateless-connect command http: eliminate "# service" line when using protocol v2 http: don't always add Git-Protocol header http: allow providing extra headers for http requests remote-curl: store the protocol version the server responded with remote-curl: create copy of the service name pkt-line: add packet_buf_write_len function transport-helper: introduce stateless-connect transport-helper: refactor process_connect_service transport-helper: remove name parameter connect: don't request v2 when pushing connect: refactor git_connect to only get the protocol version once fetch-pack: support shallow requests fetch-pack: perform a fetch using v2 upload-pack: introduce fetch server command push: pass ref prefixes when pushing fetch: pass ref prefixes when fetching ls-remote: pass ref prefixes when requesting a remote's refs transport: convert transport_get_remote_refs to take a list of ref prefixes ...
Diffstat (limited to 'upload-pack.h')
-rw-r--r--upload-pack.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/upload-pack.h b/upload-pack.h
new file mode 100644
index 0000000000..cab2178796
--- /dev/null
+++ b/upload-pack.h
@@ -0,0 +1,23 @@
+#ifndef UPLOAD_PACK_H
+#define UPLOAD_PACK_H
+
+struct upload_pack_options {
+ int stateless_rpc;
+ int advertise_refs;
+ unsigned int timeout;
+ int daemon_mode;
+};
+
+void upload_pack(struct upload_pack_options *options);
+
+struct repository;
+struct argv_array;
+struct packet_reader;
+extern int upload_pack_v2(struct repository *r, struct argv_array *keys,
+ struct packet_reader *request);
+
+struct strbuf;
+extern int upload_pack_advertise(struct repository *r,
+ struct strbuf *value);
+
+#endif /* UPLOAD_PACK_H */