我想将一些github存储库克隆到只能通过SSH隧道访问github的计算机。
我可以使用ssh地址来克隆简单的存储库而不会出现问题。
当存储库包含子模块时,访问方法由.gitsubmodules
通常默认为https地址的地址控制(因为这是github推荐的方法)。
有没有办法告诉git子模块,即使子模块的地址是https地址,它也应该始终使用ssh访问?
必须克隆存储库并对其.gitsubmodules
进行修改以使其能够通过ssh隧道克隆它似乎有所延迟。将访问方法硬编码到.gitsubmodules
文件中,而不是让用户选择适当的方法,似乎也很困难。我想一定有更好的方法,但是我找不到。
您可以使用git重写网址
git config --global url."https://".insteadOf git://
您可以在表达式中包含主机名,以限制对特定主机的重写
git config --global url."https://github.com".insteadOf git://github.com
如果您不希望重写规则是全局的,则只需将其添加到本地作用域即可。
参见下节更url.<base>.insteadOf
在http://git-scm.com/docs/git-config
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句