通过 SFTP 克隆 Git 存储库
Posted
技术标签:
【中文标题】通过 SFTP 克隆 Git 存储库【英文标题】:Cloning a Git repository over SFTP 【发布时间】:2012-02-28 02:46:52 【问题描述】:每次我尝试克隆我的 Git 存储库时都会遇到致命错误:
我运行这个:
$ git clone sftp://foo@bar.ca/git/foobar.git
我明白了:
fatal: Unable to find remote helper for 'sftp'
我正在尝试从一台服务器克隆到另一台服务器,两者都使用 SSH 身份验证。
我需要安装什么东西来启用这个 SFTP 远程助手吗?
提前感谢您提供的任何建议!
【问题讨论】:
我不认为git
直接支持sftp:你应该使用ssh://
URL。
当你git clone foo@bar.ca/git/foobar.git
时会发生什么?
我打赌他会因为未指定协议而出错。 Git 支持 ftps 是不同的。我猜它不支持 sftp 的原因是因为如果你设置了 ssh 那么你就不需要 sftp
感谢 Borealid。你似乎是对的。
sftp 似乎比 ftp 快得多,有时在共享主机上,如果您通过 SSH 登录,您可以将 git 安装到您的主目录并设置 $PATH,但不适用于您的情况通过 ssh 执行命令(这是 git 与 ssh 远程存储库一起工作的方式)。因此,SFTP 是在这些情况下的选择。
【参考方案1】:
为了使 jdi 上面的评论更加明确:Git 中没有 sftp 远程助手。 Available remote helpers 包括 git-remote-ftps,但 ftps (FTP over SSL) 和 sftp (SSH File Transfer Protocol) 是 fundamentally different protocols。也就是说,使用 ftps 克隆 Git 存储库并不常见,您可能希望使用 ssh。
【讨论】:
以上是关于通过 SFTP 克隆 Git 存储库的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Jenkins 中通过 *** 拉取/克隆 git 存储库?
使用 SourceTree 克隆非常大的 git 存储库时出错