Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > Change RUN_SETUP_GENTLY to stop dying if e.g. the .git is "not a > repo". This means that we now recover in cases like: > > $ echo "gitdir: /foo/bar" > .git > $ git ls-remote https://github.com/torvalds/linux > [... ls-remote output ...] > > But not (as intended): > > $ git rev-parse HEAD > fatal: not a git repository: /foo/bar I am of two minds. ls-remote is benign in that it behaves more or less identically when given certain types of args, and the above may be a strict improvement (but it does fail if you did not use URL but use a remote nickname you thought you configured in the repository in such a situation). There however are a few niche commands that work inside and outside a repository and they work differently. For example, if you do $ git diff file1 file2 in such a corrupt repository, I'd prefer to see the command _fail_ to nudge the user to look into the situation, instead of taking the output (which degenerates to "git diff --no-index file1 file2" outside a repository) blindly as a patch that shows the changes relative to the index for these two paths.