2010-05-03 76 views
1

我是刚开始使用Git的小公司的CM人员。我们有两个Git存储库,当前托管在我们的多用途Windows服务器的Windows机器上。但是,我们只需在名为“Callisto”的Ubuntu Linux服务器上为我们的CM软件设置专用服务器。如何让git与远程服务器一起工作?

所以我在Callisto上创建了一个测试Git仓库。我递归地给了它的目录所有适当的权限。我让系统管理员在Callisto上为我创建了一个登录名,并且我创建了一个用于通过SSH登录的密钥。我设置密钥来使用密码;我不知道这是否会导致我的问题?无论如何,我知道我的SSH登录工作,因为我通过puTTY测试它。

但是,即使经过数小时的试验和头部划伤,我无法让我的Windows Git bash(mSysGit)与Callisto交谈,以推送或拉动Callisto的git存储库文件。

我不断收到“致命错误,远端意外挂断”。而且我甚至得到了Git无法识别Callisto上的测试库作为git存储库的错误。我在网上阅读,“致命错误......意外挂断”通常是服务器连接或权限的问题。那么我在这里错过或俯视什么?为什么不使用git://协议工作,因为它只使用只读访问? Callisto上git存储库目录的组和公共权限被设置为读取和执行,但不能写入。

如果有人能帮忙,我会很感激。谢谢。

回答

0

我只传递mSysGit的熟悉,但我不认为它安装了一个SSH客户端。没有SSH客户端,git无法连接到服务器。 (根据Unix的理念,这个功能并没有融入到git中)。至于git协议,除非服务器启用了它,否则它将不起作用。由于看起来你有用于ssh访问的服务器设置,我怀疑你会在任何地方使用git协议。

+0

msysgit安装ssh或 - 如果您有 - 使用选美。 – Vili 2010-05-04 12:32:43

0

无论如何,我知道我的SSH登录工程 ,因为我通过puTTY测试它。

您是否确认可以从您的msysgit客户端SSH连接到服务器?
即当您从msysgit命令行输入ssh [email protected]时会发生什么?

有关设置您的git服务器的更多详细信息,您可能需要查看Pro Git:第4章"Git on the Server"

为什么不使用 混帐拉://协议的工作,因为只有 使用只读访问?

要使git协议起作用,您必须在服务器上设置git daemon,如Chapter 4.9 of Pro Git中所述。

你可能也想看看this answer到一个相关的SO问题。它有一个更详细的考虑事项清单。

1

如果使用腻子/选美,检查你的主机是在know_hosts文件中

docssettings/userdir/.ssh 

如果没有,第一次尝试腻子和接受你的服务器提供的关键。

您是否在.git/config中有类似的行?

[remote "origin"] 
url = ssh://[email protected]/.../repo.git 
相关问题