threads / discuss / 35392

git submodule update needs to be at the toplevel of working tree, why?

Subject: git submodule update needs to be at the toplevel of working tree, why?

## tl;dr

3 messages between Nov 22, 2013 and Nov 22, 2013.

replies: 2people: 2as markdown or json

Odin Hørthe Omdal· Nov 22, 2013, 13:22 UTC · lore
Hi,

I'm usually in a subfolder doing actual work. A very common problem I have is wanting to do a submodule update, but git really hates that. And I wonder why?

It wouldn't be hard to cd to the toplevel working directory, do the update, and cd back. It's what I have to do manually every time now already:

  $ git submodule update
  You need to run this command from the toplevel of the working tree.
  $ cd ../..
  $ git submodule update
  Submodule path 'myproject/libs/external-module': checked out
  '434fdf32a7add62...
  $ cd -

I see that it comes from git-sh-setup, so no rationale for this rather weird and surprising behavior is given in the git-submodule file. :)

-- 
  Odin Hørthe Omdal
  odinho@opera.com
John Keeping· Nov 22, 2013, 13:47 UTC · re: Odin Hørthe Omdal · lore

Re: git submodule update needs to be at the toplevel of working tree, why?

On Fri, Nov 22, 2013 at 02:22:30PM +0100, Odin Hørthe Omdal wrote:
Show 7 quoted lines
> I'm usually in a subfolder doing actual work. A very common problem I
> have is wanting to do a submodule update, but git really hates that. And
> I wonder why?
> 
> It wouldn't be hard to cd to the toplevel working directory, do the
> update, and cd back. It's what I have to do manually every time now
> already:
This restriction was removed in Git 1.8.4.
Odin Hørthe Omdal· Nov 22, 2013, 14:37 UTC · re: John Keeping · lore

Re: git submodule update needs to be at the toplevel of working tree, why?

On Fri, Nov 22, 2013, at 14:47, John Keeping wrote:
Show 10 quoted lines
> On Fri, Nov 22, 2013 at 02:22:30PM +0100, Odin Hørthe Omdal wrote:
> > I'm usually in a subfolder doing actual work. A very common problem I
> > have is wanting to do a submodule update, but git really hates that. And
> > I wonder why?
> > 
> > It wouldn't be hard to cd to the toplevel working directory, do the
> > update, and cd back. It's what I have to do manually every time now
> > already:
> 
> This restriction was removed in Git 1.8.4.
Oh, awesome!  My system git is 1.8.3.2.
I'll do a manual install then :)

Sorry for the noise. (I didn't find any earlier talk about it, but I only used gmame's search, so it might have missed something)

-- 
  Odin Hørthe Omdal
  odinho@opera.com

← back to recent threads