]> git.proxmox.com Git - libgit2.git/blame - src/libgit2/remote.h
Merge https://salsa.debian.org/debian/libgit2 into proxmox/bullseye
[libgit2.git] / src / libgit2 / remote.h
CommitLineData
bb742ede 1/*
359fc2d2 2 * Copyright (C) the libgit2 contributors. All rights reserved.
bb742ede
VM
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 */
9c82357b
CMN
7#ifndef INCLUDE_remote_h__
8#define INCLUDE_remote_h__
9
eae0bfdc
PP
10#include "common.h"
11
7e9f78b5 12#include "git2/remote.h"
41fb1ca0 13#include "git2/transport.h"
ad5611d8 14#include "git2/sys/remote.h"
c180c065 15#include "git2/sys/transport.h"
7e9f78b5 16
9c82357b 17#include "refspec.h"
114f5a6c 18#include "vector.h"
c25aa7cd 19#include "net.h"
9c82357b 20
096d9e94 21#define GIT_REMOTE_ORIGIN "origin"
22
9c82357b
CMN
23struct git_remote {
24 char *name;
25 char *url;
3ed4b501 26 char *pushurl;
d88d4311 27 git_vector refs;
4330ab26 28 git_vector refspecs;
af613ecd 29 git_vector active_refspecs;
2cdd5c57 30 git_vector passive_refspecs;
e579e0f7 31 git_vector local_heads;
9ba49bb5 32 git_transport *transport;
44daec42 33 git_repository *repo;
fe794b2e 34 git_push *push;
22a2d3d5 35 git_indexer_progress stats;
f4a62c30
BS
36 unsigned int need_pack;
37 git_remote_autotag_option_t download_tags;
5f473947 38 int prune_refs;
c5837cad 39 int passed_refspecs;
9c82357b
CMN
40};
41
e579e0f7 42int git_remote__urlfordirection(git_str *url_out, struct git_remote *remote, int direction, const git_remote_callbacks *callbacks);
c25aa7cd 43int git_remote__http_proxy(char **out, git_remote *remote, git_net_url *url);
eff5b499 44
4330ab26
CMN
45git_refspec *git_remote__matching_refspec(git_remote *remote, const char *refname);
46git_refspec *git_remote__matching_dst_refspec(git_remote *remote, const char *refname);
47
e579e0f7
MB
48int git_remote__default_branch(git_str *out, git_remote *remote);
49
50int git_remote_connect_options_dup(
51 git_remote_connect_options *dst,
52 const git_remote_connect_options *src);
53int git_remote_connect_options_normalize(
54 git_remote_connect_options *dst,
55 git_repository *repo,
56 const git_remote_connect_options *src);
e579e0f7
MB
57
58int git_remote_capabilities(unsigned int *out, git_remote *remote);
59
9c82357b 60#endif