如何克隆git存储库,以便它也克隆其子模块?
运行gitclone$REPO_URL只会创建空的子模块目录。
如何克隆git存储库,以便它也克隆其子模块?
运行gitclone$REPO_URL只会创建空的子模块目录。
当前回答
使用此命令克隆所有子模块的repo
git clone --recurse-submodules git@gitlab.staging-host.com:yourproject
更新所有子模块的代码
git submodule update --recursive --remote
其他回答
我在GitHub存储库中遇到了同样的问题。我的帐户缺少SSH密钥。该过程是
生成SSH密钥向GitHub帐户添加新的SSH密钥
然后,您可以使用子模块克隆存储库(gitclone--递归YOUR-git-REPO-URL)
or
运行gitsubmodule init和gitsubmodule update以获取已克隆存储库中的子模块。
如果子模块被添加到分支中,请确保将其包含在克隆命令中。。。
git clone -b <branch_name> --recursive <remote> <directory>
[快速回答]
克隆父回购(包括一些子模块回购)后,请执行以下操作:
git submodule update --init --recursive
如果子模块是私有子模块,您可以使用凭证存储,这样它也可以递归地克隆其私有子模块。
USER=${GITHUB_ACTOR}
TOKEN=${{ secrets.JEKYLL_GITHUB_TOKEN }}
git config --global credential.helper store
echo "https://${USER}:${TOKEN}@github.com" > ~/.git-credentials
git clone --recurse-submodules -j8 git://github.com/foo/bar.git
cd bar
我用它来克隆我的子模块,其中私有模块位于第5层深处。请允许我向您展示它是如何运作的:
您可以从github复制克隆url
然后使用:git clone—递归