如何将GitLab私有Git仓库作为子模块添加到公开Git仓库?
将私有GitLab仓库作为受限子模块添加到公开仓库
操作步骤
本地克隆公开仓库并进入目录
git clone gitlab.com/rokejulianlockhart/rokejulianlockhart.git cd rokejulianlockhart添加私有仓库作为子模块
使用SSH地址添加子模块(确保你本地已配置GitLab SSH密钥,拥有私有仓库的访问权限):git submodule add git@gitlab.com:rokejulianlockhart/s4a3h4.git s4a3h4执行后,本地会生成
.gitmodules文件记录子模块关联信息,公开仓库根目录会出现s4a3h4目录。提交并推送到公开仓库
git add .gitmodules s4a3h4 git commit -m "添加私有子模块s4a3h4" git push
权限说明
- 其他人访问公开仓库时,会看到
s4a3h4目录,但由于没有私有仓库的访问权限,尝试拉取子模块内容会失败,无法查看私有仓库内的文件。 - 你自己凭借GitLab SSH密钥(或个人访问令牌)拥有私有仓库权限,克隆公开仓库时可添加
--recurse-submodules参数直接拉取子模块内容,或后续执行git submodule update --init获取私有仓库文件。
内容的提问来源于stack exchange,提问作者RokeJulianLockhart
相关产品推荐
相关产品推荐

