2013-03-07 1 views
1

몇 repos에 대한 비공개 액세스를 허용해야합니다. git clone clone --bare 접근법을 사용하고 git-daemon을 사용하여 복제 된 repo를 제공하는 git-daemon에 대한 몇 가지 방법과 문서를 읽었습니다. 이것은 잘 작동하고 aptitude를 통해 설치되며/etc/srv/git-daemon의 서비스로 기분 좋게 실행됩니다.Git-daemon - 복제 된 repo를 어떻게 업데이트합니까?>

내 질문에 devel에 커밋이 추가되면 공용 저장소로 사용되는 복제 된 인스턴스를 어떻게 업데이트하고 동기화합니까?

또한이 repo도 쓰기가 가능합니다 (당연하지만 항상 원하지는 않습니다). git-daemon을 읽기 전용으로 설정할 수 있습니까?

답변

0

일부 사용자에게만 쓰기 전용 인 저장소를 읽기 전용으로 설정하는 경우 가장 쉬운 방법은 authorization layergitolite과 같이 추가하는 것입니다.

Apache configuration에서와 같이 인증을 요구하도록 설정할 수있는 gitweb이나 http 액세스에 플러그인 할 수 있습니다.

읽기 전용 액세스로 현재 git-daemon을 유지할 수 있지만 쓰기 목적으로 (인증 된) https 액세스를 추가 할 수 있으므로 gitolite를 통해 누가 어떤 repos를 할 수 있는지 정확하게 제어 할 수 있습니다. .

또한 다른 읽기 전용 REPO에 cd 해당 후크 위해서는, 쓰기 가능한 상류의 repo에 post-receive 후크를 추가하고 git fetch을 할 수있을 것입니다.

#!/bin/bash 
export GIT_DIR=/path/to/bare/read-only-repo.git/ 
cd $GIT_DIR 
git fetch --all