git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Solve git-submodule issues with detached work trees

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 23, 2012, 23:42 UTC
Message-ID
<7veho2hwom.fsf@alter.siamese.dyndns.org>
In-Reply-To
<500DDB99.80103@web.de>
Jens Lehmann <Jens.Lehmann@web.de> writes:
> Not inside the submodule, me thinks they only make sense in the
> superproject (that's why we clean the environment before working
> inside the submodule).

Yes, that is fundamental and the only sane behaviour that comes from what submodules are. They are free-standing projects. Not clearing these environments when Git recurses into submodule was simply a bug (the original bug was that we added recursion without thinking these things through).

Hence...
> But setting the superproject's GIT_WORK_TREE
> to something else won't work for an already initialized submodule,

... if you point the _root_ of the toplevel superproject with GIT_WORK_TREE (and the repository of the superproject with GIT_DIR), and chdir into one of its submodule's working tree, we shouldn't say $GIT_WORK_TREE/$smpath is the submodule world. That will make it impossible to work only on submodules by setting GIT_WORK_TREE to point at its root level (and the submodule repository with GIT_DIR).

Previous: Jens LehmannNext: Daniel Graña
Message 8 of 11 in “Solve git-submodule issues with detached work trees”
  1. Solve git-submodule issues with detached work treesDaniel Graña, Jul 22, 2012
  2. Junio C HamanoJul 23, 2012
  3. Jens LehmannJul 23, 2012
  4. Junio C HamanoJul 23, 2012
  5. Jens LehmannJul 23, 2012
  6. Junio C HamanoJul 23, 2012
  7. Jens LehmannJul 23, 2012
  8. Junio C HamanoJul 23, 2012
  9. Daniel GrañaJul 23, 2012
  10. Richard HartmannJul 23, 2012
  11. Richard HartmannJul 23, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.