'Unable to find current origin/master revision in submodule path

In my project (which uses git), I need to use a library, which is still in progress. I decided to create a submodule for that library, because I want to update from time to time its latest version (I don't plan to make my own change there).

I did:

git submodule add https://github.com/mb21/JSONedit.git
git commit -am 'added JSNedit submodule'
git push -u origin master
git pull origin master

Then, I did see the JSONedit folder in my local folder, and a link in my git folder online. But when I did git submodule update --remote JSONedit/, I got the following errors:

fatal: Needed a single revision
Unable to find current origin/master revision in submodule path 'JSONedit'

Does anyone know what's wrong here?



Solution 1:[1]

It seems that this problem was already solved in this thread: Git submodules - pulling into a new clone of the super project. In short you should try:

# rm -rf JSONedit
# git submodule update

Solution 2:[2]

I faced the same problem. It got solved. the folder in which the submodule would be stored was there. when I deleted the folder manually, it got resolved.

Solution 3:[3]

In my case, the problem was that Git submodule assumed there would be a branch origin/master. Instead, the submodule repository only had a branch main.

I added branch=main to the submodule definition in .gitmodules. After running git submodule sync, git submodule update --remote now works fine.

Solution 4:[4]

fatal: Needed a single revision
Unable to find current origin/master revision in submodule path
  • I face this kind of issue...
  • I fix this by updating the git version

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Community
Solution 2 pranav
Solution 3 F1iX
Solution 4 Ashish Sondagar