]> git.proxmox.com Git - libgit2.git/blob - src/remote.h
Merge pull request #2499 from csware/hard-reset-checkout-callbacks
[libgit2.git] / src / remote.h
1 /*
2 * Copyright (C) the libgit2 contributors. All rights reserved.
3 *
4 * This file is part of libgit2, distributed under the GNU GPL v2 with
5 * a Linking Exception. For full terms see the included COPYING file.
6 */
7 #ifndef INCLUDE_remote_h__
8 #define INCLUDE_remote_h__
9
10 #include "git2/remote.h"
11 #include "git2/transport.h"
12 #include "git2/sys/transport.h"
13
14 #include "refspec.h"
15 #include "vector.h"
16
17 #define GIT_REMOTE_ORIGIN "origin"
18
19 struct git_remote {
20 char *name;
21 char *url;
22 char *pushurl;
23 git_vector refs;
24 git_vector refspecs;
25 git_vector active_refspecs;
26 git_vector passive_refspecs;
27 git_transport_cb transport_cb;
28 void *transport_cb_payload;
29 git_transport *transport;
30 git_repository *repo;
31 git_remote_callbacks callbacks;
32 git_transfer_progress stats;
33 unsigned int need_pack;
34 git_remote_autotag_option_t download_tags;
35 int update_fetchhead;
36 int passed_refspecs;
37 };
38
39 const char* git_remote__urlfordirection(struct git_remote *remote, int direction);
40 int git_remote__get_http_proxy(git_remote *remote, bool use_ssl, char **proxy_url);
41
42 git_refspec *git_remote__matching_refspec(git_remote *remote, const char *refname);
43 git_refspec *git_remote__matching_dst_refspec(git_remote *remote, const char *refname);
44
45 #endif