Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

error in git submodule update --init --recursive #19

Open
fei4xu opened this issue Mar 17, 2021 · 2 comments
Open

error in git submodule update --init --recursive #19

fei4xu opened this issue Mar 17, 2021 · 2 comments

Comments

@fei4xu
Copy link

fei4xu commented Mar 17, 2021

Hi,

I'd like to clone this repo and try what it is, but I had an error following the steps in readme.md.

I did:

git clone https://github.com/skui-org/skui.git
cd skui
git submodule update --init --recursive

but I had error:

fatal: reference is not a tree: 9a12be1e7ad54658f90099f4bd80faff8aaf7616
fatal: reference is not a tree: a3b38efc89dcb9e198dd84a34d39364384921470
Unable to checkout '9a12be1e7ad54658f90099f4bd80faff8aaf7616' in submodule path '3rdparty/ci'
Unable to checkout 'a3b38efc89dcb9e198dd84a34d39364384921470' in submodule path '3rdparty/cmake'
Failed to recurse into submodule path '3rdparty'

I searched a little bit and tried all the suggestions in https://stackoverflow.com/questions/2155887/git-submodule-head-reference-is-not-a-tree-error, none of them worked for my case.

It seems that the submodule of ci and cmake in submodule 3rdparty do not have the specific commit. But when I click the submodule links on github.com, they do exist, very strange.

Anyone else has the same problem?

Thanks,
Fei

@fei4xu
Copy link
Author

fei4xu commented Mar 17, 2021

If I visit
https://github.com/skui-org/cmake/tree/a3b38efc89dcb9e198dd84a34d39364384921470
or
https://github.com/skui-org/cmake/commits/a3b38efc89dcb9e198dd84a34d39364384921470
for cmake @ a3b38ef, it does exist. (a3b38ef on Nov 6, 2019)

But if I check the full commit list,
https://github.com/skui-org/cmake/commits/master
it has only 4 commits, on master branch, while a3b38ef does not exist. There is a commit of 1916030 on Nov 7, 2019.

Add separate 3rdparty_options CMake script. **1916030** committed on Nov 7, 2019
prevent double inclusion of toolchain_options.cmake **5e93626** committed on Sep 28, 2019
add scripts for 3rdparty repo **1c2d2ec** committed on Sep 28, 2019
Initial commit **3057ead** rubenvb on Sep 28, 2019

So maybe the commit of a3b38ef does exist but on some other branch which is deleted? should git be able to check that commit out? I think the commit still exits even after the branch is deleted.

@rubenvb
Copy link
Contributor

rubenvb commented Mar 29, 2021

I just tried a clean clone with the instructions in the readme. All seems to work fine. This is with git 2.31.1.

The duplicate cmake and ci subdirectories are there with a purpose; the 3rdparty dependencies are built separately to speed up CI turnaround: https://travis-ci.org/github/skui-org/3rdparty/
That they're not pointing to the same commit is not nice, but not wrong either.
I'll see if I can rectify the different commits in each soon-ish.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants