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

Re: Making submodules easier to work with (auto-update on checkout or merge, stash & restore submodules)

From
Avery Pennarun <apenwarr@gmail.com>
Date
Apr 30, 2008, 20:31 UTC
Message-ID
<32541b130804301331o70310831raf71db7cbb51d507@mail.gmail.com>
In-Reply-To
<BC221793-3FB5-4249-8E8D-819C1B413592@gmail.com>
On 4/30/08, Tim Harper <timcharper@gmail.com> wrote:
Show 7 quoted lines
> > The problem, of course, is that you can easily have valuable, but
> > not-tracked, files in there.  Deleting the submodule is therefore no
> > option.
>
>  Submodules are not deleted.  They are moved out of the working copy into a
> folder in .git.  Therefore, upon changing back to the branch with the
> submodule, they are restored, without nay a hair on their head lost.
<drool>

Yes! I'm a little sad that I didn't think of that, because it sounds like *exactly* what I want.

What about the following case:
- submodule matches the super module checkin
- make changes to submodule but to *not* commit them
- switch supermodule branches, which should checkout a different submodule
- submodule checkout causes a conflict with uncommitted files

What will/should happen here? It seems like either the supermodule's submodule pointer won't be set properly (ie. git-submodule-update will fail, but the supermodule won't be marked as conflicted, thus git-commit in the supermodule will commit the wrong submodule revision) or else submodule files might have to be lost or something.

Also, someone earlier asked for a link to your work. I'd like to see it too, as I don't know what a "textmate git bundle" is. I gather textmate is a MacOS X program, but I don't know what that has to do with git-submodule :)

Thanks,
Avery
Previous: Tim HarperNext: Tim Harper
Message 10 of 22 in “Making submodules easier to work with (auto-update on checkout or merge, stash & restore submodules)”
  1. Tim HarperApr 30, 2008
  2. Tim HarperApr 30, 2008
  3. Andreas EricssonApr 30, 2008
  4. Johannes SchindelinApr 30, 2008
  5. Avery PennarunApr 30, 2008
  6. Ping YinApr 30, 2008
  7. Roman ShaposhnikApr 30, 2008
  8. Avery PennarunApr 30, 2008
  9. Tim HarperApr 30, 2008
  10. Avery PennarunApr 30, 2008
  11. Tim HarperApr 30, 2008
  12. Avery PennarunApr 30, 2008
  13. Roman ShaposhnikApr 30, 2008
  14. Avery PennarunApr 30, 2008
  15. Finn Arne GangstadMay 1, 2008
  16. Avery PennarunMay 1, 2008
  17. Roman ShaposhnikMay 6, 2008
  18. Avery PennarunMay 7, 2008
  19. Ping YinMay 8, 2008
  20. Steven GrimmMay 1, 2008
  21. Roman ShaposhnikMay 6, 2008
  22. Ping YinMay 1, 2008

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.