list mirror (unofficial, one of many)
 help / color / Atom feed
From: Stefan Beller <>
To: David Turner <>
Cc: git <>
Subject: Re: git push requires a worktree?
Date: Wed, 30 May 2018 10:32:35 -0700
Message-ID: <> (raw)
In-Reply-To: <>

On Wed, May 30, 2018 at 10:16 AM, David Turner <> wrote:
> I am doing a funny thing where I do git -C .git/modules/morx push
> fleem:fleem.

I can do that, too. :)

> This is failing in the case where I have a sparse
> checkout and the worktree directory "morx" (which is where
> .git/modules/morx/config's core.worktree points) doesn't exist.

I could reproduce that without sparseness by removing that directory.

Before removing the dir in the worktree, the push worked fine; after
removing I got a

    fatal: cannot chdir to '../../../entropy': No such file or directory

> I don't know why git push cares about the worktree -- it'll happily
> work in a bare repo with no worktree at all, or if the worktree is an
> unrelated git repo or whatever.

I think we should unset the worktree config for submodules that are
not checked out. I confirm that running
  git config --unset -f .git/modules/<name>/config core.worktree
will have the push working as expected.

So I think it is not so much a bug in push, but there is
* a bug in the submodule data design: Why do we need to store
  core.worktree if there is no worktree? (I'll research if there are
  historic artefacts that would suggest we need that)
* the setup code for commands that do not have the
  NEED_WORK_TREE flag in git.c

> I can work around it, but if there's a bug, I think we should fix it.

I think so, too.

  reply index

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-30 17:16 David Turner
2018-05-30 17:32 ` Stefan Beller [this message]
2018-05-30 18:50   ` Duy Nguyen

Reply instructions:

You may reply publically 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:

  List information:

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

  git send-email \
    --in-reply-to='' \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link list mirror (unofficial, one of many)

Archives are clonable:
	git clone --mirror
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Newsgroups are available over NNTP:

 note: .onion URLs require Tor:

AGPL code for this site: git clone public-inbox