Thread (36 messages) flat view 36 messages, 8 authors, 2016-06-15

Re: Notes on Using Git with Subprojects

From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:42:42

Hi.

On Wed, 27 Sep 2006, Martin Waitz wrote:
On Wed, Sep 27, 2006 at 11:55:22AM +0200, Johannes Schindelin wrote:
quoted
quoted
My current approach is like this:

 * create a .gitmodules file which lists all the directories
   which contain a submodule.
 * the .git/refs/heads directory of the submodule gets stored in
   .gitmodule/<modulename> inside the parent project
Taking this a step further, you could make subproject/.git/refs/heads a 
symbolic link to .git/refs/heads/subproject, with the benefit that fsck 
Just Works.
in fact it is done this way (more or less).
With the difference, that if you store the refs outside of 
<root>/.git/refs, you have to take extra care that prune does not delete 
the corresponding objects.
quoted
Nevertheless, you have to take care of the fact that you need to commit 
the state of the root project just after committing to any subproject.
why?

You can accumulate as many changes in different subprojects until you
get to a state that is worth committing in the parent project.
All these changes are then seen as one atomic change to the whole
project.
AFAICT this is not the idea of subprojects-in-git. If you have to track 
the subprojects in the root project manually anyway, you don't need _any_ 
additional tool (you _can_ track files in a subdirectory containing a .git 
subdirectory).

Ciao,
Dscho
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help