github 中文件夹为 @+数字,在 git clone 后,里面是空文件夹。
例如:https://github.com/ojdkbuild/ojdkbuild/tree/master/deps
空文件夹是项目的子模块,需要用 submodule 下载。
@ 后面的数字是哈希值,用于确定唯一的提交状态。文件 push 时会压缩,然后上传同时生成一串检验字符串。@ 后面的数字就是检验字符串的前面部分。
下载的工程带有 submodule
git submodule update --init --recursive
为当前工程添加 submodule
git submodule add 仓库地址 路径
切换所有子模块到 master 分支,后面也可以接其它命令
git submodule foreach git checkout master
https://git-scm.com/book/zh/v2/Git-工具-子模块
https://www.zhihu.com/question/359398013