2012-11-26 1 views
1

큰 배포 프로세스 문제의 일부인 간단한 명령을 다른 서버에서 실행하는 데 문제가 있습니다.원격 서버의 Gitolite 인증 문제

사용자 gitolite :

나는

[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. 

를 반환으로 상자에 해당 사용자를 사용하여 ssh를 수 그러나 내가 실행하려고 자식 LS-원격 SSH : //[email protected] : 2011/proto_projectname_rails 그러면 암호를 묻는 메시지가 나타납니다.

내 gitolite.conf는 라인

repo proto_projectname_rails 
    RW+  = MBP 
    RW+  = repo2 

및 공개 키는 예를 들어, 동일한 이름을 가진 내 keydir에있다 repo2.pub. 나 또한 거기에 repo2을 포함하도록 authorised_keys 업데이트

gl-setup repo2.pub 

을 달렸다.

나는 내가해야 할 다른 것을 생각하지 못합니다. 내 로컬 컴퓨터에서 동일한 명령을 실행할 경우. 즉 MBP에서 성공적으로 완료됩니다.

이것에 대한 아이디어는 환영 할만한 것이 아닙니다.

감사합니다.

+0

그래서'ssh [email protected] : 2011'이 올바르게 작동합니까? 내 말은'gitolite' 인사 메시지를 받는데 사용했던'ssh' 명령인가요? 그리고 그 메시지는 당신이'proto_projectname_rails' repo에'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을 사용할 수 있습니다.

그러나 최종 사용자 인 경우 gitolite 클라이언트 인 git ls-remote ssh://[email protected]/proto_projectname_rails이 작동합니다.