git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Phillip Wood <phillip.wood123@gmail.com>
Cc: git@vger.kernel.org,
	 Johannes Schindelin <Johannes.Schindelin@gmx.de>,
	Wing Huang <huangsen365@gmail.com>,
	 Patrick Steinhardt <ps@pks.im>
Subject: Re: [PATCH v2 1/4] breaking-changes: switch default branch to main
Date: Fri, 05 Sep 2025 08:04:37 -0700	[thread overview]
Message-ID: <xmqqwm6d3pq2.fsf@gitster.g> (raw)
In-Reply-To: <f43c3e61-01c8-47d8-bf0d-7cfa13cacca5@gmail.com> (Phillip Wood's message of "Fri, 5 Sep 2025 11:06:41 +0100")

Phillip Wood <phillip.wood123@gmail.com> writes:

>> Would there be folks who type "git init" to get a 'main' branch,
>> while trying to follow a recipe written in pre-3.0 days that assumes
>> the initial branch is called differently, and get confused after
>> seeing many commands written in the recipe for them to follow , like
>> "git checkout -b next master" fail?  Do they need a different advice
>> message to help them, i.e.e.g,
>>      $ git init
>>      Initialized empty Git repository in /a/b/c/.git/
>>      hint: Since Git 3.0, an initial branch is 'main' these days.
>>      hint: If you need its name to be different (e.g. 'frotz'),
>>      hint: you can immediately rename it with "git branch -m frotz".
>>      hint: Disable this message with "got config set advice.foo false"
>> or something?  I dunno.  In any case, that will have to be a new and
>> different advice message, and defaultBranchName should not be reused
>> for that purpose, so the change in the the above hunk is fine.  I am
>> wondering if we need a new entry protected by the same #ifdef on the
>> #else side.
>
> Personally I find the current advice pretty annoying and would be glad
> to see it go away. Are there really that many people who want to
> customize the initial branch name that it is worth adding some new
> advice post Git 3.0?

Given that the tutorial materials that were written when we gave the
init.defaultBranchName mechanism _all_ assumed that by default the
initial branch that gets created is called 'master', the current
advice messages were primarily not about usability but personal
preference.  The message targets those who dislike 'master' so much
that they are willing to replace all 'master' they read in the
tutorial material as 'main' if they are following an existing
tutorial material.  And the instruction is primarily about how to
switch to a new default permanently with the configuration.

But the one that I pointed out as missing in your proposal is quite
different.  It is meant for those who need help about usability, not
personal preference.  Even if they strongly prefer 'main' over
'master', in order to follow along an existing tutorial material,
they will find it less error prone if the initial branch used in
their practice repository were 'master'.  That is why the
instruction is only about recovering only _this_ repository they
just have created (Notice that I did not tell them how to use the
configuration mechanism to permanently live in the past in the above
"... or something?" example?  It is very deliberate---"the world has
moved, so should they, except for this single instance" is the
message they need to hear).

> Although I find it annoying, I do think the
> current advice serves a useful purpose as it informs people the
> default that they are used to is changing and that they can override
> it. Given how long we've been warning people I'm not sure we need to
> say anything once the default has changed.

You need to remember that there always are new users who use Git
seriously for the first time _after_ switchover happens.

Because it is more about usability than preference, I see at least
the same degree of need, if not more, to help these people who still
need to use the old name to follow along the tutorial material than
those who have been helped by the existing "Sorry you got 'master',
but you may prefer a different name, and you can do so by doing
these things" message,

  reply	other threads:[~2025-09-05 15:04 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-27 15:24 [PATCH 0/6] breaking changes: switch default initial branch name to "main" Phillip Wood
2025-08-27 15:24 ` [PATCH 1/6] t0018: switch default branch name to main Phillip Wood
2025-08-27 17:21   ` Junio C Hamano
2025-08-28 14:00     ` Phillip Wood
2025-08-28 16:49       ` Junio C Hamano
2025-08-28 21:31         ` brian m. carlson
2025-08-27 15:24 ` [PATCH 2/6] t4013: " Phillip Wood
2025-08-27 15:24 ` [PATCH 3/6] t9902: " Phillip Wood
2025-08-27 15:24 ` [PATCH 4/6] t0613: stop setting default initial branch Phillip Wood
2025-08-27 17:30   ` Junio C Hamano
2025-08-27 15:24 ` [PATCH 5/6] t1403: remove dependency on GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME Phillip Wood
2025-08-27 15:24 ` [PATCH 6/6] breaking-changes: switch default branch to main Phillip Wood
2025-08-27 18:41   ` Junio C Hamano
2025-09-02 11:36   ` Patrick Steinhardt
2025-09-02 15:13     ` Phillip Wood
2025-09-03  4:44       ` Patrick Steinhardt
2025-09-03  9:54         ` Phillip Wood
2025-09-03 11:51           ` Patrick Steinhardt
2025-09-03 18:40           ` Junio C Hamano
2025-09-04  7:09             ` Patrick Steinhardt
2025-09-04 13:30               ` Phillip Wood
2025-09-05  6:07                 ` Patrick Steinhardt
2025-09-04 13:27             ` Phillip Wood
2025-08-28 13:12 ` [PATCH 0/6] breaking changes: switch default initial branch name to "main" Johannes Schindelin
2025-09-04 13:21 ` [PATCH v2 0/4] " Phillip Wood
2025-09-04 13:21   ` [PATCH v2 1/4] breaking-changes: switch default branch to main Phillip Wood
2025-09-04 17:40     ` Junio C Hamano
2025-09-05 10:06       ` Phillip Wood
2025-09-05 15:04         ` Junio C Hamano [this message]
2025-09-04 13:21   ` [PATCH v2 2/4] t4013: switch default branch name " Phillip Wood
2025-09-04 13:21   ` [PATCH v2 3/4] t9902: " Phillip Wood
2025-09-04 18:27     ` Junio C Hamano
2025-09-05 10:07       ` Phillip Wood
2025-09-05 12:14     ` Patrick Steinhardt
2025-09-09  9:12       ` Phillip Wood
2025-09-04 13:21   ` [PATCH v2 4/4] t0613: stop setting default initial branch Phillip Wood
2025-09-04 18:35     ` Junio C Hamano
2025-09-05 10:09       ` Phillip Wood
2025-09-04 17:03   ` [PATCH v2 0/4] breaking changes: switch default initial branch name to "main" Junio C Hamano
2025-09-04 18:47     ` Phillip Wood
2025-09-10 15:28 ` [PATCH v3 " Phillip Wood
2025-09-10 15:29   ` [PATCH v3 1/4] breaking-changes: switch default branch to main Phillip Wood
2025-09-10 15:29   ` [PATCH v3 2/4] t4013: switch default branch name " Phillip Wood
2025-09-10 15:29   ` [PATCH v3 3/4] t9902: " Phillip Wood
2025-09-10 15:29   ` [PATCH v3 4/4] t0613: stop setting default initial branch Phillip Wood
2025-09-10 20:41   ` [PATCH v3 0/4] breaking changes: switch default initial branch name to "main" Junio C Hamano
2025-09-17  9:22     ` Junio C Hamano
2025-09-17 12:02       ` Kristoffer Haugsbakk
2025-09-17 15:02         ` Junio C Hamano
2025-09-17 14:53       ` Phillip Wood
2025-09-17 15:21         ` Junio C Hamano
2025-09-17 16:16           ` Junio C Hamano
2025-09-18 15:06             ` Phillip Wood
2025-09-17 16:18   ` [PATCH v2 5/4] initial branch: give hints after switching the default name Junio C Hamano
2025-09-18 15:06     ` Phillip Wood
2025-09-18 18:42       ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqwm6d3pq2.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=huangsen365@gmail.com \
    --cc=phillip.wood123@gmail.com \
    --cc=ps@pks.im \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).