在git存储库r中,我有一个子模块,它是用以下命令初始化的:
git submodule add git@mygitserver...
现在一个用户使用
https
克隆了r,并在运行时得到一个错误git submodule init
git submodule update
因为他没有ssh(服务器上传了公钥)访问权限。
所以我的问题是,是否可以创建一个子模块,该子模块将自动使用与在
git submodule update
命令上克隆父存储库所用的协议相同的协议? 最佳答案
该用户可以设置配置:
git config --global url.https://mygitserver/.insteadOf ssh://git@mygitserver/
# or possibly (to be tested)
git config --global url.https://mygitserver/.insteadOf git@mygitserver/
这样,https url将始终用于mygitserver(主repo或子模块),而不是ssh。