원격 서버에는 저장소의 자식 체크 아웃을하기 위해 수신 후 후크가 설정되어 있습니다.
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
그러나 로컬 컴퓨터에서 서버의 git 리포지토리로 푸시하면 다음 오류 메시지가 나타납니다.
remote: error: unable to unlink old '<file>' (Permission denied)
이것은 거의 모든 파일에 대해 한 번의 오류 메시지로 여러 번 나타납니다.
그러나 git을 사용하여 변경할 수있는 README.txt 파일이 있습니다. 권한은 다음과 같습니다.
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
그러나 소유자와 권한이 동일한 다른 파일은 오류가 발생합니다.
다른 웹 사이트의 다른 로컬 저장소에는 로컬 컴퓨터 사용자 이름이 소유자 인 파일이 있으며 원격 서버로 푸시하면 파일의 원격 서버 소유자를 존중하고 매력처럼 작동합니다.
분명히 권한 관련 오류 인 것 같지만 제안을 해결할 방법을 찾을 수 없습니다.
sudo chmod -R g+w
유죄 폴더를 사용하여 문제를 해결했습니다 .