Git development
 help / color / mirror / Atom feed
From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Junio C Hamano <gitster@pobox.com>
Cc: Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com>,
	 git@vger.kernel.org
Subject: Re: [PATCH 00/17] tests: access bare repositories explicitly
Date: Sat, 4 Apr 2026 21:45:31 +0200 (CEST)	[thread overview]
Message-ID: <dcb8c6f1-1410-9f04-c389-6f69ac4fe842@gmx.de> (raw)
In-Reply-To: <xmqqeckxqld8.fsf@gitster.g>

Hi Junio,

On Thu, 2 Apr 2026, Junio C Hamano wrote:

> "Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
> writes:
> 
> > The safe.bareRepository configuration variable (introduced in
> > 8d1a7448206e) allows restricting implicit bare repository discovery.
> > Its default may well change to "explicit" in Git v3.0, at which point
> > any test that relies on implicit discovery of a bare repository would
> > break, even if the test subject has nothing to do with bare
> > repositories.
> 
> I do not recall such a change for safe.bareRepository discussed in
> the recent past, and I do not have a strong opinion yet because of
> that, but if no such change to require "explicit" comes, we would be
> losing test coverage with these patches, because these rewrite the
> ones that rely on a working code in implicit cases?

Note that the commit message says "may well" not "will". Precisely because
such a discussion has not been had in the recent past.

But yes, that discussion has not happened, and I was quite surprised about
that when I recently looked (I prepared some of my code for such a change,
assuming that Git 3.0 as a natural inflection point would be the time for
8d1a7448206e's long journey to come to a conclusion).

> Shoudln't there be a patch [01/18] before everything else that
> updates Documentation/BreakingChanges.adoc to propose the default
> change?

Well, yes and no. There should be an update to BreakingChanges to propose
that default change, but obviously it should not only be a documentation
change: It should also adjust `Documentation/config/safe.adoc` to mention
the intended change of behavior, and it should introduce
`WITH_BREAKING_HANGES`-specific conditional code in `setup.c`.

And, crucially, it should pass the test suite under WITH_BREAKING_CHANGES.

To do that, a lot more needs to happen than just the 17 patches in this
here patch series. Most of the additional changes are quite mechanical,
and can be validated relatively easily despite their sheer number. And
only at the very end of those changes can that `safe.bareRepository`
change even be proposed. The eventual patch that does what you ask (but
not as 1/18, for the reasons I outlined above), and more, is:
https://github.com/gitgitgadget/git/pull/2072/changes/435e3505e7997a25f45777a6ba436899a793c59c

I plan on proposing that patch in due time, to start the discussion
whether or not it is a good idea to change the default of
`safe.bareRepository` in Git 3.0.

Ciao,
Johannes

  reply	other threads:[~2026-04-04 19:45 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-02 14:33 [PATCH 00/17] tests: access bare repositories explicitly Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 01/17] t0001: allow implicit bare repo discovery for aliased-command test Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 02/17] t0001: replace `cd`+`git` with `git --git-dir` in `check_config` Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 03/17] t0003: use `--git-dir` for bare repo attribute tests Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 04/17] t0056: allow implicit bare repo discovery for `-C` work-tree tests Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 05/17] t1020: use `--git-dir` instead of subshell for bare repo Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 06/17] t1900: avoid using `-C <dir>` for a bare repository Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 07/17] t2400: explicitly specify bare repo for `git worktree add` Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 08/17] t2406: use `--git-dir=.` for bare repository worktree repair Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 09/17] t5503: avoid discovering a bare repository Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 10/17] t5505: export `GIT_DIR` after `git init --bare` Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 11/17] t5509: specify bare repository path explicitly Johannes Schindelin via GitGitGadget
2026-04-02 20:44   ` Junio C Hamano
2026-04-03 14:22     ` Johannes Schindelin
2026-04-03 18:17       ` Junio C Hamano
2026-04-04 19:29         ` Johannes Schindelin
2026-04-02 14:33 ` [PATCH 12/17] t5540/t5541: avoid accessing a bare repository via `-C <dir>` Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 13/17] t5619: wrap `test_commit_bulk` in `GIT_DIR` subshell for bare repo Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 14/17] t6020: use `-C` for worktree, `--git-dir` for bare repository Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 15/17] t9210: pass `safe.bareRepository=all` to `scalar register` Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 16/17] t9700: stop relying on implicit bare repo discovery Johannes Schindelin via GitGitGadget
2026-04-02 14:33 ` [PATCH 17/17] git p4 clone --bare: need to be explicit about the gitdir Johannes Schindelin via GitGitGadget
2026-04-02 18:15 ` [PATCH 00/17] tests: access bare repositories explicitly Junio C Hamano
2026-04-04 19:45   ` Johannes Schindelin [this message]
2026-04-06 15:45     ` Junio C Hamano
2026-04-04 19:49 ` [PATCH v2 " Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 01/17] t0001: allow implicit bare repo discovery for aliased-command test Johannes Schindelin via GitGitGadget
2026-04-06 16:00     ` Junio C Hamano
2026-04-04 19:49   ` [PATCH v2 02/17] t0001: replace `cd`+`git` with `git --git-dir` in `check_config` Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 03/17] t0003: use `--git-dir` for bare repo attribute tests Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 04/17] t0056: allow implicit bare repo discovery for `-C` work-tree tests Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 05/17] t1020: use `--git-dir` instead of subshell for bare repo Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 06/17] t1900: avoid using `-C <dir>` for a bare repository Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 07/17] t2400: explicitly specify bare repo for `git worktree add` Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 08/17] t2406: use `--git-dir=.` for bare repository worktree repair Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 09/17] t5503: avoid discovering a bare repository Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 10/17] t5505: export `GIT_DIR` after `git init --bare` Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 11/17] t5509: specify bare repository path explicitly Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 12/17] t5540/t5541: avoid accessing a bare repository via `-C <dir>` Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 13/17] t5619: wrap `test_commit_bulk` in `GIT_DIR` subshell for bare repo Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 14/17] t6020: use `-C` for worktree, `--git-dir` for bare repository Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 15/17] t9210: pass `safe.bareRepository=all` to `scalar register` Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 16/17] t9700: stop relying on implicit bare repo discovery Johannes Schindelin via GitGitGadget
2026-04-04 19:49   ` [PATCH v2 17/17] git p4 clone --bare: need to be explicit about the gitdir Johannes Schindelin via GitGitGadget

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=dcb8c6f1-1410-9f04-c389-6f69ac4fe842@gmx.de \
    --to=johannes.schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=gitster@pobox.com \
    /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