programing

Git 푸시 오류:이전 링크를 해제할 수 없음(권한 거부)

javamemo 2023. 5. 5. 08:31
반응형

Git 푸시 오류:이전 링크를 해제할 수 없음(권한 거부)

원격 서버에서 저장소를 Git Checkout하기 위해 사후 수신 후크가 설정되어 있습니다.

#!/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

하지만 소유자와 권한이 동일한 다른 파일은 오류를 제공합니다.

다른 웹 사이트의 다른 로컬 저장소에는 로컬 컴퓨터 사용자 이름이 있는 파일이 소유자로 있으며, 원격 서버에 푸시하면 파일의 원격 서버 소유자를 존중하고 매력적으로 작동합니다.

분명히 권한 관련 오류인 것 같은데, 해결 방법을 찾을 수가 없네요, 어떤 제안이 있나요?

파일의 링크를 해제해야 할 때는 디렉터리에 대한 'w' 권한이 있어야 합니다. 해당 파일은 파일에 대한 권한입니다.

sudo chmod -R ug+w .;

이 명령을 사용하면 문제가 해결됩니다.폴더에 쓰기 권한을 부여합니다.

IDE를 사용하는 경우 문제는 파일이 일부 프로세스에서 사용되었다는 것입니다.톰캣이 파일을 사용하는 것처럼 말입니다.특정 프로세스를 식별하고 닫으십시오.그렇게 하면 당신의 문제가 해결될 것입니다.

sudo chown -R $USER:$USER .

저를 위해 그 일을 했습니다.

폴더 소유권에 문제가 있을 수 있으니 현재 사용자 소유권으로 설정합니다.

sudo chown -R your_login_name /path/to/folder
You can find the solution [here][1]

저도 같은 문제가 있었고 위의 해결책들은 저에게 효과가 없었습니다.문제가 되는 폴더를 삭제했습니다.그러면:

git reset --hard

Git 상태를 정리하기 위해 남은 파일을 삭제한 후 다음 작업을 수행했습니다.

git pull

드디어 성공했습니다.

참고: 예를 들어 폴더가 빌드 파일이 있는 공용 폴더인 경우 파일을 다시 작성해야 합니다.

FWIW - 저도 비슷한 문제가 있었는데 이것이 (허가 모드를 넘어) 완화시켰는지 모르겠습니다.이 문제로 분기를 사용하던 이클립스를 닫습니다.

이것은 오래된 질문이지만 Mac 사용자에게 도움이 될 수 있습니다.

Time Machine에서 수동으로 파일을 복사하는 경우 Time Machine을 통해 복원하는 대신 모든 항목에 ACL을 추가하여 사용자의 권한을 손상시킬 수 있습니다.

예를 들어, 이 문서의 "Mac OS X 파일 사용 권한 수정 방법" 섹션에 "모든 사용자"가 사용자 지정 사용 권한을 가지고 있으며, 이로 인해 사용자 지정 권한이 모두 엉망이 됩니다.

http://dreamlight.com/how-to-fix-mac-os-x-file-permissions 의 잘못된 권한

이러한 디렉토리/파일에서 ACL을 제거해야 합니다.이 슈퍼유저의 답변은 여기에 포함되지만 명령은 다음과 같습니다.

sudo chmod -RN .

그런 다음 디렉터리와 파일에 적절한 사용 권한이 있는지 확인할 수 있습니다.사용합니다750 및 디터리및의 경우644파일용.

git reset --hard

나를 위해 일했습니다.

일부 파일은 쓰기 금지되어 있어 덮어쓸 수 없습니다.sudocmod 775 폴더 이름과 같은 쓰기를 허용하도록 폴더 권한 변경

그리고 실행합니다.

git pull 

다시.

루트 디렉터리 자체의 권한도 확인해야 합니다!

다음을 찾을 수 있습니다.

drwxr-xr-x  9 not-you www-data  4096 Aug  8 16:36 ./
-rw-r--r--  1     you www-data  3012 Aug  8 16:36 README.txt
-rw-r--r--  1     you www-data  3012 Aug  8 16:36 UPDATE.txt

'권한 거부' 오류가 나타납니다.

Intellij에서 서버를 실행할 때 이 오류와 기타 이상한 Git 오류가 발생합니다.서버를 중지하고 git 명령을 자주 다시 시도하면 해결됩니다.

당기면 로컬 변경이 발생했을 수 있습니다.

추적되지 않은 파일을 추가합니다.

git add

저장 변경 사항.

기트 스톡

로컬 변경사항을 삭제합니다.

현금 인출기

sudo 허가를 받아 당김

suggit pull 원격 분기

폴더의 권한을 확인한 결과, 744로 괜찮습니다.제 워드프레스 사이트에 설치된 플러그인에 문제가 있었습니다.내가 의심한 옥수수 작업에 있는 플러그인이 걸려 있습니다.

sudo it can fix the issue

sudo git pull origin master

당신은 그것을 작동합니다.

저의 경우 폴더에 있는 모든 그룹 구성원에게 읽기, 쓰기 및 실행 권한을 부여해야 했습니다.Git 사용자가 그룹 구성원이지만 소유자가 아니기 때문입니다.

sudo chmod -R g=rwx <folder>

창에서 가장 쉬운 방법:

작업 관리자로 이동

파일 탐색기 종료 태스크

작업 관리자에서 "파일" 탭으로 이동한 다음 "새 작업 실행"을 클릭합니다.

탐색기를 입력합니다.exe

문제가 해결되었습니다.

문제의 파일이 다른 응용 프로그램에서 열리지 않는지 확인합니다(Excel과 함께 사용했습니다)!

언급URL : https://stackoverflow.com/questions/11774397/git-push-error-unable-to-unlink-old-permission-denied

반응형