X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=refs.c;h=13dc2c3291b398aae7c9797155363922def64eff;hb=77645b5daa6eaa4ab0502ef00817c87f7666bfec;hp=392f0bbf68b14926a81aa248ca7af3e43d5215eb;hpb=7bceb83bfe0f857c76ce34e481cbc923eabb9bac;p=thirdparty%2Fgit.git diff --git a/refs.c b/refs.c index 392f0bbf68..13dc2c3291 100644 --- a/refs.c +++ b/refs.c @@ -562,7 +562,20 @@ void expand_ref_prefix(struct strvec *prefixes, const char *prefix) strvec_pushf(prefixes, *p, len, prefix); } -char *repo_default_branch_name(struct repository *r) +static const char default_branch_name_advice[] = N_( +"Using '%s' as the name for the initial branch. This default branch name\n" +"is subject to change. To configure the initial branch name to use in all\n" +"of your new repositories, which will suppress this warning, call:\n" +"\n" +"\tgit config --global init.defaultBranch \n" +"\n" +"Names commonly chosen instead of 'master' are 'main', 'trunk' and\n" +"'development'. The just-created branch can be renamed via this command:\n" +"\n" +"\tgit branch -m \n" +); + +char *repo_default_branch_name(struct repository *r, int quiet) { const char *config_key = "init.defaultbranch"; const char *config_display_key = "init.defaultBranch"; @@ -574,8 +587,11 @@ char *repo_default_branch_name(struct repository *r) else if (repo_config_get_string(r, config_key, &ret) < 0) die(_("could not retrieve `%s`"), config_display_key); - if (!ret) + if (!ret) { ret = xstrdup("master"); + if (!quiet) + advise(_(default_branch_name_advice), ret); + } full_ref = xstrfmt("refs/heads/%s", ret); if (check_refname_format(full_ref, 0)) @@ -585,12 +601,12 @@ char *repo_default_branch_name(struct repository *r) return ret; } -const char *git_default_branch_name(void) +const char *git_default_branch_name(int quiet) { static char *ret; if (!ret) - ret = repo_default_branch_name(the_repository); + ret = repo_default_branch_name(the_repository, quiet); return ret; }