“git pull origin develop”할 때마다 “insufficient permission for adding an object to repository database .git / objects”가 있습니다.
remote: Counting objects: 70, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 42 (delta 35), reused 42 (delta 35)
error: insufficient permission for adding an object to repository database .git/objects
fatal: failed to write object
fatal: unpack-objects failed
답변
@ChrisHayes가 우발적 인 sudo에 대해 옳다고 가정하면이 문제를 해결해야합니다. 저장소 내부에서 :
sudo chown -R $USER:$USER "$(git rev-parse --show-toplevel)/.git"
업데이트 : illegal group name
오류가 발생 하는 사람들을 위해 대신 다음을 시도하십시오.
sudo chown -R $(id -u):$(id -g) "$(git rev-parse --show-toplevel)/.git"
답변
프로젝트의 루트 디렉토리로 이동하여 아래 명령을 실행하여이 문제를 해결하십시오.
cd .git/objects
sudo chown -R yourname:yourgroup *
답변
제 것은 어리석은 실수였습니다 … 올바른 사용자 이름과 그룹이 설정되었지만 www-data는 이에 액세스하는 계정이었습니다. 이 디렉토리는 vaindil : www-data가 소유했지만 권한은 755이므로 www-data가 쓸 수 없습니다. 다음과 같이 수정했습니다.
$ sudo chmod -R 775 /path/to/repo
답변
github에서 공용 저장소를 복제하려는 경우 URL에서 .git을 제거하십시오.
예:
보낸 사람 : https://github.com/example/repository.git받는
사람 : https://github.com/example/repository
답변
좋은 관행이 아님 (대안 일뿐)
나는 Ubuntu를 사용하고 있으며 동일한 문제에 직면했습니다. 이를 해결하기 위해 사용자를 루트로 전환하기 만하면 더 이상 오류가 표시되지 않습니다.
$su
password
그때,
$git pull origin master
권장 방법 : 디렉토리 권한 변경