summaryrefslogtreecommitdiff
path: root/builtin/clone.c
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2020-06-24 14:46:34 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-06-24 16:14:21 (GMT)
commit0cc1b475bbcc530c5429c741fbcfdc2730d27223 (patch)
tree5bd41c7715789e28f0ec109e95d31d500e445845 /builtin/clone.c
parent8747ebb7cde9e90d20794c06e6806f75cd540142 (diff)
downloadgit-0cc1b475bbcc530c5429c741fbcfdc2730d27223.zip
git-0cc1b475bbcc530c5429c741fbcfdc2730d27223.tar.gz
git-0cc1b475bbcc530c5429c741fbcfdc2730d27223.tar.bz2
clone: use configured default branch name when appropriate
When cloning a repository without any branches, Git chooses a default branch name for the as-yet unborn branch. As part of the implicit initialization of the local repository, Git just learned to respect `init.defaultBranch` to choose a different initial branch name. We now really want that branch name to be used as a fall-back. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/clone.c')
-rw-r--r--builtin/clone.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/builtin/clone.c b/builtin/clone.c
index 487b0a4..a924e3d 100644
--- a/builtin/clone.c
+++ b/builtin/clone.c
@@ -1264,9 +1264,13 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
remote_head_points_at = NULL;
remote_head = NULL;
option_no_checkout = 1;
- if (!option_bare)
- install_branch_config(0, "master", option_origin,
- "refs/heads/master");
+ if (!option_bare) {
+ const char *branch = git_default_branch_name();
+ char *ref = xstrfmt("refs/heads/%s", branch);
+
+ install_branch_config(0, branch, option_origin, ref);
+ free(ref);
+ }
}
write_refspec_config(src_ref_prefix, our_head_points_at,