git-即使使用SSH风格的git@github,您也可以通过HTTPS进行克隆吗
我正在尝试通过 .git 克隆具有子模块的 git 存储库git submodule update --init --recursive。这些子模块都使用“git@github.com:foo/bar.git” URL。不幸的是,我的工作场所正在阻止 SSH URL 进入他们的防火墙。但是,我可以通过 HTTPS 进行克隆,没有任何问题。
如前所述,子模块 URL 被硬编码在存储库中以使用 SSH。有没有办法告诉 git 使用 HTTPS 克隆这些子模块存储库,而不是 SSH 对 git 存储库进行任何直接修改?
回答
使用git config --global url.<base>.insteadOf在飞行中替代的URL。就像是
git config --global url.https://github.com/.insteadOf git@github.com:
(请注意末尾的冒号;必须映射git@github.com:user/repo.git到https://github.com/user/repo.git)。
在https://stackoverflow.com/search?q=%5Bgit-submodules%5D+insteadof 中查看更多示例
THE END
二维码