
우리 개발자는 모두 Windows 워크스테이션을 실행합니다. 우리는 Linux 개발 서버를 운영하고 있습니다. 저는 개발 서버에서 자체 git 서버를 실행해 보고 싶었습니다.
약간의 조사 끝에 설치하기로 결정했습니다.기톨라이트. 설치 방법에 대한 많은 튜토리얼이 매우 유사합니다.이 하나.
나에게 그다지 이해되지 않는 한 단계는 클라이언트 시스템에서 공개 키를 생성한 다음 이를 서버에 업로드하고 다음과 같이 사용하기를 원한다는 것입니다.
$ gl-setup YourName.pub
이 단계의 목적이 무엇인지 이해가 되지 않습니다... 연결하고 git repos를 사용하려는 약 12개의 클라이언트 시스템이 있을 것입니다... 어떤 시스템이 "클라이언트" 시스템입니까? 각 클라이언트 시스템에 대해 하나씩 이 단계를 두 번 이상 수행해야 합니까? 나중에 새 클라이언트 시스템을 추가해야 하면 어떻게 되나요? 이 단계가 왜 필요한가요?
클라이언트 컴퓨터가 로그인/비밀번호를 입력하지 않고도 서버에 인증할 수 있도록 키가 있다고 가정합니까? 클라이언트 워크스테이션이 git 저장소에 액세스하는 데 사용할 로그인/비밀번호 시스템을 설정할 수는 없나요? LDAP 로그인만 통합할 수 있나요? 공개 키가 필요한가요?
또한 우리는 Linux가 아닌 Windows 워크스테이션을 실행하고 있으므로 공개 키를 생성하는 것은 단순히 openssl을 설치하고 수행하는 것만큼 간단하지 않습니다.
이와 같은 것을 설치하는 것이 더 간단할 것 같습니다...
답변1
gitolite를 사용할 각 사용자/클라이언트 시스템 조합에 대한 키를 생성/추가해야 합니다. 키는 gitolite-admin/keydir 디렉토리에 복사됩니다. (나는 $USERNAME-$HOSTNAME-id_rsa.pub 명명 규칙을 사용합니다. 그것이 필요한지는 확실하지 않지만 저에게는 작동합니다). keydir 디렉토리에 키를 추가한 후에는 gitolite-admin/conf/gitolite.conf 파일을 업데이트하여 적절한 프로젝트/사용자 액세스를 설정해야 합니다(명명 규칙으로 $USERNAME-$HOSTNAME-id_rsa 사용).
git add conf keydir
이 작업이 완료되면 , commit -m "blah blah blah"
, 댄스를 할 수 git push origin master
있고 모든 것이 순조롭게 진행되면 적절한 사용자가 서버의 적절한 git 저장소에 액세스할 수 있어야 합니다.
편집하다:Windows 사용자가 어떤 git 클라이언트 설정을 사용하고 있는지 기억이 나지 않지만 여기에는 키를 생성하는 데 필요한 모든 부분이 있습니다(사용할 수 없으므로 물어볼 수 없습니다). 그것을 파악하고 작동시키려면 몇 번의 노력이 필요했지만 일단 설정되면 잘 작동하는 것 같습니다.
답변2
gitolite
Gitolite는 인증을 위해 일반적으로 서버에서 한 명의 사용자만 사용합니다 . 이것이 keydir
사용자를 추가하기 위해 다른 사용자 공개 키를 gitolite 디렉토리에 추가하는 이유입니다 . 공식 문서에서 이를 볼 수 있습니다 gitolite is (usually) heavily dependent on ssh
.http://sitaramc.github.com/gitolite/gl_ssh.html.