1

有 3 台服务器:本地、裸机、开发。

以下工作流程完美运行:

1. Make my local changes 
2. git push to Bare 
3. ssh into Bare 
4. $ ssh ip.of.Development.server "cd /path/to/Development/repo; git pull"

这正是您所期望的,内容被拉到我的开发服务器上,显示在页面上,一切都很好。

但是,如果我将最后一行移到 Bare 上的 hooks/post-receive 文件,我会得到一个

remote: Host key verification failed.

我可以毫无问题地从 Development SSH 到 Bare,并且无需使用密码(在设置 RSA 对之后)。

4

1 回答 1

1

据我了解SSH,它不是可交换的——开发可以知道Bare(开发可以拥有Bare的公钥),而Bare可以不知道开发(Bare没有开发的公钥)。

我将验证 Bare 是否已正确设置为 SSH to Development。

于 2013-01-15T23:03:02.553 回答