2014-06-10 5 views
1

나는 gitolite 인스턴스를 설정하고 사용자를 추가하는 일반적인 절차 (즉, 공개 키 파일을 keydir/xxx.pub에 추가하고 커밋 및 업스트림 푸시)하지만 내가 추가 한 키를 사용하여 리포지토리를 복제 할 수 없다는 것을 알게되었습니다.keydir 항목이 authorized_keys에 전파되지 않음

gitolite-admin에 공개 키를 추가 한 커밋이 업스트림 (즉, gitolite 설치의 맨 위에있는 gitolite-admin 저장소)에 성공적으로 푸시되었음을 확인했습니다.

나는 "gitolite"사용자의 authorized_keys 파일에 대해 변경된 사항이 없다는 것을 알았습니다. 나에게 잘못된 것 같습니다. 공개 키가 추가 될 것으로 예상되며, 이것이 인증 작동 안됨.

다른 문제는 어디에서 볼 수 있습니까?

답변

1

내가 대응하는 변화가 나에게 잘못 보인다 "gitolite"사용자의 authorized_keys에 파일을하지 않았다 것으로 나타났습니다 - 나는 공개 키가 추가 보여야하는데, 나는이 왜 의심 인증이 작동하지 않습니다.

실제로이 문제의 근원입니다.

당신은 ~/.gitolite/로그

에서 로그를 볼 수 있지만 문제가 지속되면 gitolite-admin/conf/gitolite.conf 파일에서의 repos 중 하나의 구성원으로 사용자가 볼 것을 추가 확인 할 수 있습니다.

당신은 (직접 서버) ssh troubleshooting 및 실행 따를 수 :

  • gitolite sshkeys-lint가, 확인하는 오류 메시지가있는 경우

    • gitolite compile는 admin 디렉토리의 keydir의 각 키를 참조하기를, 무엇을 액세스가 가능합니다.
  • 1

    확인, 나는이 주도하는 일련의 이벤트를 볼 생각 :

    1) gitolite-관리자 (xxxxxx.pub 편집 gitolite.conf 추가) 2) 푸시의 지역 클론을 편집 master - remote: check GL_GITCONFIG_KEYS in the rc file for how to allow it 으로 실패합니다. 3) .gitolite.rc에서 해당 구성을 수정하십시오. 4) 다시 시도하십시오 (2). succeeds 5) .ssh/authorized_keys가 업데이트되지 않았 음을 확인하십시오. 6) gitolite-admin (사소한 변경, 간단한 설명 추가) 7) Gitolite-admin을 마스터 으로 푸시 8) 모든 키가 .ssh/authorized_keys에 올바르게 설정됩니다.

    (2)의 실패시 커밋이 성공적으로 업스트림에 푸시되었지만 주어진 이유로 authorized_keys 업데이트를 실행하지 못하는 문제가있었습니다. 푸시 (4 단계)를 반복하려고 시도 할 때, git는 푸시가 노프가 아니며 후크가 실행되지 않았 음을 관찰했습니다. gitolite-admin (6)에 사소한 변경을 가하고 다시 밀어 넣으면 (7) 강제로 실제 푸시 작업을 수행하고 후크를 연습합니다.

    이것은 gitolite (v1.5.7)의 다소 오래된 버전입니다. 실용적인 이유로 사용해야하므로, 최신 버전이이 방법으로 작동하는지 여부는 알 수 없습니다.

    +0

    1.5? 그것은 오래되었습니다;) V3는 서버에서 gitolite를 다시 컴파일 할 수있게하여 아무 작업도하지 않습니다. 어쨌든, 좋은 의견. +1 – VonC

    관련 문제