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

  • Need GIT workflow suggestion
  • git thinks files have changed
  • How does `git log --since` count?
  • Is there a tool to watch a remote Git repository on Ubuntu and do popup notifications when commits are made?
  • Git merge strategy for integrating 'patch' branch into 'minor', 'minor' branch into 'major'
  • GitHub Organization Pages without named repository
  • 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.

  • How can git be installed on CENTOS 5.5?
  • Running pylint against only changed lines/files with jenkins
  • How can I restore only the modified files on a git checkout?
  • Where is my git alias stored?
  • merging to branches, doesn't matter which one you merge into?
  • Is there a way for git to create a patch for reviewboard?
  • One Solution collect form web for “Can't push a commit of Git repo with a submodule”

    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.

    Git Baby is a git and github fan, let's start git clone.