threads / discuss / 30902

Egit/Jgit support for relocated .git directories

Subject: Egit/Jgit support for relocated .git directories

## tl;dr

4 messages between Jun 26, 2012 and Jul 7, 2012.

replies: 3people: 3as markdown or json

Chris Packham· Jun 26, 2012, 08:18 UTC · lore
Hi,

This is a bit of a secondhand bug report/query so sorry if the details are a bit sketchy.

Since git 1.7.8:

``When populating a new submodule directory with "git submodule init", the $GIT_DIR metainformation directory for submodules is created inside $GIT_DIR/modules/<name>/ directory of the superproject and referenced via the gitfile mechanism. This is to make it possible to switch between commits in the superproject that has and does not have the submodule in the tree without re-cloning.''

I've had several colleagues at work tell me that with the relocated $GIT_DIR the Egit integration with eclipse doesn't work. I can't really qualify "doesn't work" but from what I've been told importing the project works but blaming/annotating doesn't.

I believe the gitfile mechanism isn't new but it possibly hasn't been used by many Egit/Jgit users. Can anyone confirm if it is supported by Egit/Jgit (and I'm barking up the wrong tree).

Thanks, Chris

Shawn Pearce· Jun 26, 2012, 15:40 UTC · re: Chris Packham · lore

Re: Egit/Jgit support for relocated .git directories

On Tue, Jun 26, 2012 at 1:18 AM, Chris Packham <judge.packham@gmail.com> wrote:
Show 20 quoted lines
> This is a bit of a secondhand bug report/query so sorry if the details
> are a bit sketchy.
>
> Since git 1.7.8:
>
> ``When populating a new submodule directory with "git submodule init",
> the $GIT_DIR metainformation directory for submodules is created inside
> $GIT_DIR/modules/<name>/ directory of the superproject and referenced
> via the gitfile mechanism. This is to make it possible to switch
> between commits in the superproject that has and does not have the
> submodule in the tree without re-cloning.''
>
> I've had several colleagues at work tell me that with the relocated
> $GIT_DIR the Egit integration with eclipse doesn't work. I can't really
> qualify "doesn't work" but from what I've been told importing the
> project works but blaming/annotating doesn't.
>
> I believe the gitfile mechanism isn't new but it possibly hasn't been
> used by many Egit/Jgit users. Can anyone confirm if it is supported by
> Egit/Jgit (and I'm barking up the wrong tree).

I am pretty certain we forgot to support gitfile in JGit. Hence this doesn't work in EGit.

Whoops.
Chris Packham· Jun 28, 2012, 08:16 UTC · re: Shawn Pearce · lore

Re: Egit/Jgit support for relocated .git directories

On 06/27/2012 03:40 AM, Shawn Pearce wrote:
Show 26 quoted lines
> On Tue, Jun 26, 2012 at 1:18 AM, Chris Packham <judge.packham@gmail.com> wrote:
>> This is a bit of a secondhand bug report/query so sorry if the details
>> are a bit sketchy.
>>
>> Since git 1.7.8:
>>
>> ``When populating a new submodule directory with "git submodule init",
>> the $GIT_DIR metainformation directory for submodules is created inside
>> $GIT_DIR/modules/<name>/ directory of the superproject and referenced
>> via the gitfile mechanism. This is to make it possible to switch
>> between commits in the superproject that has and does not have the
>> submodule in the tree without re-cloning.''
>>
>> I've had several colleagues at work tell me that with the relocated
>> $GIT_DIR the Egit integration with eclipse doesn't work. I can't really
>> qualify "doesn't work" but from what I've been told importing the
>> project works but blaming/annotating doesn't.
>>
>> I believe the gitfile mechanism isn't new but it possibly hasn't been
>> used by many Egit/Jgit users. Can anyone confirm if it is supported by
>> Egit/Jgit (and I'm barking up the wrong tree).
> 
> I am pretty certain we forgot to support gitfile in JGit. Hence this
> doesn't work in EGit.
> 
> Whoops.

This[1] little snippet makes me think it wasn't entirely forgotten but perhaps not finished or widely tested.

Alternatively as a workaround is there anyway of telling git to use old the behaviour for git submodule init?

-- [1] - http://git.eclipse.org/c/jgit/jgit.git/tree/org.eclipse.jgit/src/org/eclipse/jgit/lib/BaseRepositoryBuilder.java#n93

Robin Rosenberg· Jul 7, 2012, 10:18 UTC · re: Chris Packham · lore

Re: Egit/Jgit support for relocated .git directories

Chris Packham skrev 2012-06-26 10.18:
Show 22 quoted lines
> Hi,
>
> This is a bit of a secondhand bug report/query so sorry if the details
> are a bit sketchy.
>
> Since git 1.7.8:
>
> ``When populating a new submodule directory with "git submodule init",
> the $GIT_DIR metainformation directory for submodules is created inside
> $GIT_DIR/modules/<name>/ directory of the superproject and referenced
> via the gitfile mechanism. This is to make it possible to switch
> between commits in the superproject that has and does not have the
> submodule in the tree without re-cloning.''
>
> I've had several colleagues at work tell me that with the relocated
> $GIT_DIR the Egit integration with eclipse doesn't work. I can't really
> qualify "doesn't work" but from what I've been told importing the
> project works but blaming/annotating doesn't.
>
> I believe the gitfile mechanism isn't new but it possibly hasn't been
> used by many Egit/Jgit users. Can anyone confirm if it is supported by
> Egit/Jgit (and I'm barking up the wrong tree).

It is supported. There is however a commit as late as in May that relates to gitfile, so you may need 2.0.

-- robin

← back to recent threads