This question is based on this thread.
My .gitmodules is at my Home
[submodule "bin"]
path = bin
url = git://github.com/masi/bin.git
My folder -structure at my Home:
~
|-- [drwxr-xr-x] bin // this is the folder which I make a submodule
// it is also a folder where I have a Git to push my submodule's files
| -- fileA
` -- folderA
...
I run
git submodule init # I get no output from these commands
git submodule update
I run
git submodule foreach git pull
I get
Entering 'bin'
fatal: Where do you want to fetch from today?
Stopping at 'bin'; script returned non-zero status.
My first assumption to fix the bug was to change path = bin
to path = /Users/Masi/bin
. However, this does not solve the problem.
How can you upload the content from the external repository which is a submodule in my Git?
This is normally the error made when there is no remote configured.
(From this thread)
It was a patch introduced to at least fixes the regression when running "git pull" in a repository initialized long time ago that does not use the .git/config file to specify where my remote repositories are.
So this message indicates the remote repo mentioned in .git/modules is not declared in .git/config
From git submodule
Submodules are not to be confused with remotes, which are meant mainly for branches of the same project;
submodules are meant for different projects you would like to make part of your source tree, while the history of the two projects still stays completely independent and you cannot modify the contents of the submodule from within the main project.
I believe you may have missed the step of
git submodule init
:submodule init
If your remote repo (declared in .git/modules) is adequately referenced in .git/config, you should not have this error message anymore.
Before using (pullin) submodules, the steps:
remain necessary.