Hi Junio
On 27/08/2025 18:21, Junio C Hamano wrote:
Phillip Wood <phillip.wood123@xxxxxxxxx> writes:
From: Phillip Wood <phillip.wood@xxxxxxxxxxxxx>
These tests use "trunk" as the default branch name but the exact
name of the branch is incidental to testing if the advice message
includes it. ...
Would't we be better prepared for a future where advice messages may
start including the current branch name, though, if we made sure we
are on the branch whose name is known?
The advice message does include the current branch name, that's why the
test needs to be updated when we change that name from "trunk" to
"main". The sentence above is trying to say that it does not matter what
that name is, we just need to check it appears in the advice message. I
could see an argument for the tests not depending on git's default
branch name if it changed frequently but realistically we're unlikely to
change in again in the near future. If we did use a different name in
the tests it is just as likely to cause objections and need to be
changed as git's default name so I'm not sure it gains us much.
... Git 3.0 will change the default branch name to "main"
and remove support for GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME so change
Will it? I would have expected and hoped that this support won't be
ripped out. The political atomosphere to decide if a name is
"correct" will change over time. When somebody comes up with a
reason to burn 'main', just like everybody moved out of 'master' a
few years ago, wouldn't we be better off to keep this mechanism?
If we truly believe that we have chosen the forever-perfect name
that nobody would ever bring up renaming again, we can rip the
support out. But I am not that optimistic.
If it's another 20 years until we change the default branch is it really
worth supporting this variable until then? I find setting it in tests is
mostly pointless boilerplate. When the variable was introduced in
704fed9ea22 (tests: start moving to a different default main branch
name, 2020-10-23) it was described as "This `GIT_TEST_*` variable is
meant purely for the transitional period while the entire test suite is
converted to use `main` as the initial branch name by default." so I was
hoping we could remove it.
these test to use "main" instead of "topic".
You meant "trunk" here.
Will fix
Thanks
Phillip
Signed-off-by: Phillip Wood <phillip.wood@xxxxxxxxxxxxx>
---
t/t0018-advice.sh | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/t/t0018-advice.sh b/t/t0018-advice.sh
index f68e08d0b14..c695ade4be8 100755
--- a/t/t0018-advice.sh
+++ b/t/t0018-advice.sh
@@ -2,7 +2,7 @@
test_description='Test advise_if_enabled functionality'
-GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=trunk
+GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main
export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
. ./test-lib.sh
@@ -33,7 +33,7 @@ test_expect_success 'advice should not be printed when config variable is set to
test_expect_success 'advice should not be printed when --no-advice is used' '
q_to_tab >expect <<-\EOF &&
- On branch trunk
+ On branch main
No commits yet
@@ -55,7 +55,7 @@ test_expect_success 'advice should not be printed when --no-advice is used' '
test_expect_success 'advice should not be printed when GIT_ADVICE is set to false' '
q_to_tab >expect <<-\EOF &&
- On branch trunk
+ On branch main
No commits yet
@@ -77,7 +77,7 @@ test_expect_success 'advice should not be printed when GIT_ADVICE is set to fals
test_expect_success 'advice should be printed when GIT_ADVICE is set to true' '
q_to_tab >expect <<-\EOF &&
- On branch trunk
+ On branch main
No commits yet