skui icon indicating copy to clipboard operation
skui copied to clipboard

error in `git submodule update --init --recursive`

Open fei4xu opened this issue 4 years ago • 2 comments

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 avatar Mar 17 '21 02:03 fei4xu

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.

fei4xu avatar Mar 17 '21 04:03 fei4xu

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.

rubenvb avatar Mar 29 '21 21:03 rubenvb