繁体   English   中英

如何使用密钥通过ssh将私有服务器上的git repo克隆到本地计算机?

[英]How to clone git repo on private server to local machine via ssh with key?

看不到任何针对这个特定问题的帖子,所以这里...

我在vps上有一个git repo。 存储库跟踪一个网站(包含在public_html )以及该网站所需的目录(即privatetmp等)。 像这样:

    drwxr-xr-x  8 someuser someuser 4096 Jan 17 07:00 .git/
    drwxrwx---  5 someuser www-data 4096 Jan 17 07:00 private/
    drwxr-x--- 10 someuser www-data 4096 Jan 17 07:00 public_html/
    drwxrwx---  2 someuser www-data 4096 Jan 17 07:00 tmp/

因此,此存储库位于网络根目录之上,不可公开访问。 在此linux系统上设置了仅具有密钥访问权限的ssh。

我想通过ssh将此远程git repo克隆到本地计算机。 怎么样?

我已经尝试过git clone ssh://user@ipaddress:22/path/to/repo . 但我得到:

    Cloning into '.'...
    Permission denied (publickey).
    fatal: Could not read from remote repository.

我不明白为什么这是因为我的ssh配置文件正确指定了IdentityFileHostname而普通的ssh在这些设置下工作正常。

有任何想法吗? 谢谢。

将环境变量GIT_TRACE设置为0以外的值将使git输出别名的扩展,并委托给其他子程序。

这将使您看到git用于ssh到远程计算机的确切命令。

无论如何,这里的信息非常清楚: Permission denied (publickey). 这肯定来自ssh,因此,如果正常的ssh可以正常工作,则需要查找所谓的正常ssh与git正在执行的ssh之间的区别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM