Subject: Re: Gitweb and submodules

From: Jakub Narebski <[email-masked]>
Date: Sat, 28 Jul 2007 22:39:28 +0200

On Sat, 28 July 2007, Sven Verdoolaege wrote:
> On Sat, Jul 28, 2007 at 12:29:16PM +0200, Jakub Narebski wrote:
>>
>> What do you think about using "submodule.$name.gitdir" configuration 
>> variable for that?
> 
> What will be the value?  A path relative to the gitdir of the superproject?

Or absolute path. I was thinking about absolute path, but path
relative to GIT_DIR of superproject is a good idea.

>> It has to be configuration variable because the 
>> location of repository which has submodule objects doesn't change when 
>> checking out (or rewinding) to different commit in supermodule.
> 
> Let's hope Pasky provides a way to set this information...

Why Pasky?

>> As a special case I'd use 'no value' to note that submodule objects are 
>> contained in the supermodule repository.
> 
> How about using '.' for that and no value for submodules that
> are not available on this server?

Very good idea, both using '.' to mark that submodule objects are in
the superproject objects database, and no value for not available
(although I'm less sure about the latter).

I am thinking about the following sequence to search for submodule
objects:

>>From $GIT_DIR/config:
  submodule.$name.objects (absolute or relative to gitdir of superproject)
  submodule.$name.gitdir  (absolute or relative to gitdir of superproject)
  submodule.$name.url     (to find GIT_DIR, if it is local filesystem URL)

If there is working directory, from .gitmodules file in top level
of working directory:
  submodule.$name.path/.git (relative to toplevel of working directory)

What do you think about this?

-- 
Jakub Narebski
Poland