내 서버에 gitosis 설정이 있는데 원격 컴퓨터의 작업 디렉토리에 대한 체크 아웃 변경 사항을 포스트 후 수신 후크로 만들려고합니다.Gitosis 게시 후 수신 후크가 공개 키 오류를 가져 오는
처음에는 cannot open /home/user/source/testing-local/.git/FETCH_HEAD: Permission denied
이라는 오류가 발생하여 작업 디렉토리의 .git 폴더 그룹 소유권을 git 사용자로 변경했습니다.
이 다음 나는 gitosis가 실행 중이고 활성화되어있는 git 사용자의 gitosis에 키를 설정하기 위해 어떤 사용자가 후크를 실행하는지 확인하도록 유도 한 오류 Host key verification failed
이 있습니다. 그 gitosis.conf에서. 지금은 내 포스트받을 후크는 다음과 같습니다 이전 Permission denied (publickey).
받고 있어요 :
#!/bin/bash
while read oldrev newrev refname
do
if [ "$refname" == "refs/heads/master" ]; then
WORKDIR=/home/user/source/testing-local
export GIT_DIR=$WORKDIR/.git
pushd $WORKDIR >/dev/null
id
git pull --quiet >/dev/null
fi
done
id
호출이 그냥로 실행하고있어 어떤 사용자를 확인하는 것입니다.
더 쉬운 방법이 있나요?! 설치 과정에서 중요한 것을 놓친 적이 있습니까?
+1 두 번째 줄에 오타가 있습니다. '$ HOME/ssh'는'$ HOME/.ssh'이어야합니다. –
@ 마크 : ... 고정되어 있습니다. 고마워요 :) – VonC
@VonC 당신이 제안한대로 모든 권한을 확인하고 github 도움을 받았다. 이제는 .ssh/config 파일에 필요한 모든 옵션을 지정했습니다. git 사용자의 authorized_keys를 엉망으로 만들면 로그인 할 수 있습니다. 그런 다음 올바른 방식으로 다시 넣을 수 있습니다. 그러나 post-receive 스크립트는 여전히 Permission Denied를 가져옵니다. 어떻게 디버깅을 더 할 수 있을지에 대한 생각은? – ghickman