Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't push a commit of Git repo with a submodule

I've recently added submodule "C" to my repo "B", then checked out a particular commit in submodule C (a previous release of that tool I want to include in B), then committed B and attempted to push. I get this error:

$ git push --recurse-submodules=on-demand

...

Everything up-to-date
The following submodule paths contain changes that can
not be found on any remote:
  _submodules/C

Please try

        git push --recurse-submodules=on-demand

or cd to the path and use

        git push

to push them to a remote.

fatal: Aborting.
fatal: The remote end hung up unexpectedly
gitpub error:  process git-shell failed with status 128

I should mention that the commit in C that I have checked out is parentless/detached (not sure why the developer opted to have it this way). This appears to cause an issue when I want to push my commit in B. It might also be relevant to mention that B is a submodule of a superproject A as well.

Thanks for any insight you may be able to provide.

like image 499
Fremmith Avatar asked Jan 08 '15 16:01

Fremmith


1 Answers

Ok, being relatively new to Git, I missed that the push command should NOT have included --recurse-submodules for my purposes. I believe I got the message I did because it thought I wanted to also push a commit to the submodule, for which there was no branch.

like image 172
Fremmith Avatar answered Sep 19 '22 23:09

Fremmith