aboutsummaryrefslogtreecommitdiffstats
path: root/builtin/ls-remote.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-02-17 17:21:40 -0800
committerJunio C Hamano <gitster@pobox.com>2021-02-17 17:21:40 -0800
commit69571dfe219f48614e0e0ae7e28efae0be297764 (patch)
tree74213c28659aa3dbcb9ad78a9a6bd946d0c5f6dd /builtin/ls-remote.c
parent0871fb9af5aa03a56c42a9257589248624d75eb8 (diff)
parent4f37d45706514a4b3d0259d26f719678a0cf3521 (diff)
downloadgit-69571dfe219f48614e0e0ae7e28efae0be297764.tar.gz
Merge branch 'jt/clone-unborn-head'
"git clone" tries to locally check out the branch pointed at by HEAD of the remote repository after it is done, but the protocol did not convey the information necessary to do so when copying an empty repository. The protocol v2 learned how to do so. * jt/clone-unborn-head: clone: respect remote unborn HEAD connect, transport: encapsulate arg in struct ls-refs: report unborn targets of symrefs
Diffstat (limited to 'builtin/ls-remote.c')
-rw-r--r--builtin/ls-remote.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/builtin/ls-remote.c b/builtin/ls-remote.c
index 092917eca2..ef604752a0 100644
--- a/builtin/ls-remote.c
+++ b/builtin/ls-remote.c
@@ -45,7 +45,8 @@ int cmd_ls_remote(int argc, const char **argv, const char *prefix)
int show_symref_target = 0;
const char *uploadpack = NULL;
const char **pattern = NULL;
- struct strvec ref_prefixes = STRVEC_INIT;
+ struct transport_ls_refs_options transport_options =
+ TRANSPORT_LS_REFS_OPTIONS_INIT;
int i;
struct string_list server_options = STRING_LIST_INIT_DUP;
@@ -94,9 +95,9 @@ int cmd_ls_remote(int argc, const char **argv, const char *prefix)
}
if (flags & REF_TAGS)
- strvec_push(&ref_prefixes, "refs/tags/");
+ strvec_push(&transport_options.ref_prefixes, "refs/tags/");
if (flags & REF_HEADS)
- strvec_push(&ref_prefixes, "refs/heads/");
+ strvec_push(&transport_options.ref_prefixes, "refs/heads/");
remote = remote_get(dest);
if (!remote) {
@@ -118,7 +119,7 @@ int cmd_ls_remote(int argc, const char **argv, const char *prefix)
if (server_options.nr)
transport->server_options = &server_options;
- ref = transport_get_remote_refs(transport, &ref_prefixes);
+ ref = transport_get_remote_refs(transport, &transport_options);
if (ref) {
int hash_algo = hash_algo_by_ptr(transport_get_hash_algo(transport));
repo_set_hash_algo(the_repository, hash_algo);