git에서 가져 오는 중 오류-저장소 데이터베이스 .git / objects에 개체를 추가 할 수있는 권한이 부족합니다. an object to repository database

“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

권장 방법 : 디렉토리 권한 변경


답변


이 글은 Git 카테고리에 분류되었고 태그가 있으며 님에 의해 에 작성되었습니다.