2012-11-26 89 views
1

我在另一臺服務器上運行一個簡單的命令(這是較大的部署過程問題的一部分)時遇到問題。遠程服務器的Gitolite身份驗證問題

用戶gitolite:

我可以ssh使用該用戶到框,它返回

[email protected]:~$ ssh [email protected] 
PTY allocation request failed on channel 0 
hello repo2, this is gitolite v2.1-19-g36dfb85 running on git 1.7.0.4 
the gitolite config gives you the following access: 
    R W  proto_projectname_rails 
    @R_ @W_  testing 
Connection to repo1.x closed. 

然而,當我嘗試運行git LS-遠程ssh://[email protected]:2011/proto_projectname_rails它會提示輸入密碼。

我gitolite.conf具有線

repo proto_projectname_rails 
    RW+  = MBP 
    RW+  = repo2 

和公鑰是我keydir用相同的名字,例如: repo2.pub。 我也跑

gl-setup repo2.pub 

其更新authorised_keys包括在那裏repo2。

我完全不知道我還需要做什麼。如果我從本地機器運行相同的命令。即從MBP中成功完成。

對此的任何想法都是值得歡迎的。

謝謝。

+0

因此'ssh [email protected]:2011'能正常工作嗎?我的意思是,這是你用來獲取'gitolite'問候信息的'ssh'命令?那消息確實提到你對'proto_projectname_rails'回購有'RW +'權限? – VonC

+0

是的,它返回一個問候消息。我會更新上面的消息,它說,它似乎有RW –

+0

好吧,但'gitolite @ repo1'不是'[email protected]:2011',那麼'git ls-remote ssh:// gitolite @ repo1/proto_projectname_rails'會工作嗎?或'git ls-remote ssh:// gitolite @ repo1:proto_projectname_rails'? – VonC

回答

1

如果ssh [email protected]有效,那麼這就是你必須使用gitolite的ssh地址。
Gitolite本身會調用git,並且服務器上的ssh設置可能會在內部使用[email protected]:2011進行該git調用。

但是,對於最終用戶,gitolite的客戶端,git ls-remote ssh://[email protected]/proto_projectname_rails將工作。