我正在尝试从路由器连接到github上托管的git存储库。
路由器有wget但它不支持ssl连接; github只允许通过ssl进行http下载。不能更新路由器的固件以使wget能够支持ssl连接;或者使用git客户端更新路由器。
然而,路由器可以通过ssh访问github。
例如,
ssh git@github.com -i git.key git-receive-pack username/repo.git
是否可以使用类似的ssh命令下载存储库中的单个文件或主存档?
我能想到的唯一其他选择是在我的远程服务器上设置Web代理,这样我就可以使用wget来访问存储库,但这会为进程添加依赖项。
谢谢,
答案 0 :(得分:0)
如果使用
创建克隆 git clone --bare ssh://URL/repo.git
您获得了主存档。
理论上如果scp
命令处于打开状态(通常不是),则可以使用scp
进行复制
答案 1 :(得分:0)
Git协议不适用于文件,但适用于历史记录和引用。您可以将选项传递到git-clone
/ git-fetch
,例如--depth 1
和--single-branch
以产生类似效果,但如果您想直接使用ssh
,我必须自己实施git协议,这比你尝试做的任何其他事情都要麻烦。
如果ssh的SOCKS代理无效,那么您将不得不使用该HTTP代理。由于没有解释为什么这样的系统需要从不是回购的存储库中获取任意数据,这听起来很像XY问题,这是问题子集的某个角落,它有助于评估原因这有助于解决问题。