Git'fatal:새 인덱스 파일을 쓸 수 없습니다.'
저는 이것에 대한 다른 많은 스레드들을 보았지만 도움이 되지 않습니다.
나는 매우 간단한 레포 - 두 개의 자바스크립트 파일을 가지고 있습니다.맥북에 100GB 이상 있습니다.파일을 하위 디렉터리로 이동하고 로컬로 변경 사항을 준비하려고 하면...
치명적: 새 인덱스 파일을 쓸 수 없습니다.
터미널에서 모든 작업을 수행하든 소스 트리와 같은 GUI를 사용하든 이 문제가 발생합니다.또한 파일 중 하나가 잠겨 로그오프했다가 다시 로그인할 때까지 작업 디렉터리를 삭제할 수 없습니다.
왜 이런 일이 생기는 건가요?잠금 장치가 무언가 준비하는 것을 방해합니까?그렇다면 OS X에서 문제 파일의 잠금을 해제하려면 어떻게 해야 합니까?원격 레포는 Google 코드입니다. 차이가 있다면, 아직 원격 레포를 사용하지는 않았지만요.모든 것이 지역적입니다.
제 경우에는 디스크 공간이 부족해서 공간을 만들기 위해 하드 드라이브에서 파일을 삭제해야 했습니다.
저는 지난 며칠 동안 같은 문제를 겪고 있습니다.기본적으로 제가 모르는 사이에 전체 레포가 새 파일 시스템으로 이동되었습니다. Git 상태를 실행하려고 했을 때 갑자기 레포의 모든 파일이 업데이트되었다는 보고가 있었습니다.
가능한 해결책
그래서 구글 검색을 많이 한 후에 다음을 시도했습니다.
- .git 사용 권한 변경(같은 문제)
- .git/index 사용 권한 변경(같은 문제)
- git 커밋할 모든 변경 사항 추가(같은 문제)
- 파일 이름이 너무 긴 오류를 보고했기 때문에 삭제된 파일을 gitrming합니다(같은 문제).
- git reset(소프트|헤드|하드)(동일호)
- git clean (동일 이슈)
- Windows Defender 끄기(같은 문제)
- Git 업데이트(같은 문제)
- 다른 깃 클라이언트 (나는 깃배시를 사용합니다) (같은 문제)
- 1개 대신 2개의 커피 마시기 (같은 이슈)
tl:dr - 더티 솔루션
이 문제를 해결할 수 있었던 유일한 방법은 인덱스 파일을 복사하고 원본을 삭제하고 복사본의 이름을 변경하는 것이었습니다.
나는 그것이 실제로 '해결책'이 아니라는 것을 알고 있지만, 이제 모든 파일/브런치가 그대로인 ><>이 마법처럼 작동한다는 것을 알고 있습니다.이게 왜 효과가 있는지 아는 사람이 있다면, 말해보세요.
저의 경우 Dropbox 동기화를 일시 중지하여 문제를 해결했습니다.
Mac에서도 동일한 문제가 발생했습니다.파일 시스템 ACL로 인해 발생한 것 같습니다. ㅠㅠchmod -RN /path/to/repoACL을 삭제합니다.이 작업을 수행한 후 변경 사항을 적용할 수 있었습니다.인덱스 파일을 복사하는 방법을 사용하여 원본을 삭제하고 복사본을 뒤로 이동하면 동일한 결과를 얻을 수 있습니다.
구글 드라이브나 드롭박스와 같은 온라인 동기화 서비스에서 github을 설정한 경우, 동기화 서비스가 github가 올바르게 작동하지 않는 것처럼 파일에 대한 읽기/쓰기를 시도할 때 동기화를 해제해 보십시오.
저의 경우 솔루션은 새 사용자에게 권한을 추가하는 것이었습니다.
내가 새로운 OS를 설치하고, 내 저장소를 이동하고, 이 정확한 오류를 보여주었을 때, 나는 루트 폴더를 선택한 다음 인증된 사용자를 추가하여 모든 것을 확인했습니다.
Visual Studio Code(Visual Studio Code, 이 경우 파일 저장 시 자동 업로더 백그라운드 작업이 실행됨)를 닫는 것으로 문제가 해결되었습니다.
그 해결책에 대한 공로: 내 친구이자 동료인 Arnel.
.git/index 파일이 다른 프로세스(나의 로컬 개발 웹 서버)에서 사용되고 있는 것을 알게 되었습니다.저는 그 과정을 종료했고, 그것은 작동했습니다.
이것은 저에게 효과가 있었습니다.
rm -f ./.git/index.lock
메시지 " " 가 표시됩니다.fatal: Unable to write new index fileGit 인덱스 파일에 새 콘텐츠를 쓸 수 없음을 의미합니다..git\indexGit 인덱스에 대한 자세한 내용은 여기를 참조하십시오.이 질문에 대한 모든 답변을 검토한 후 다음과 같은 근본 원인을 요약합니다.
- 새 콘텐츠의 크기가 사용 가능한 디스크 용량을 초과합니다.(솔루션:디스크 공간 정리)
- 사용자에게 이 파일에 대한 액세스 권한이 없습니다. (솔루션: 권한 부여)
- 사용자에게 권한이 있지만
.git\index다른 사용자 또는 프로세스에 의해 잠겨 있습니다.(솔루션:파일 잠금 해제)
Windows에서 어떤 프로세스가 파일 또는 폴더를 잠그는지 확인 링크는 특정 파일을 잠그는 프로세스를 확인하기 위해 다음과 같은 접근 방식을 지정합니다.
SysInternals Process Explorer - 찾기 > 찾기 핸들 또는 DLL로 이동합니다."Handle or DLL substring:" 텍스트 상자에 파일 경로(예: "C:\path\to\file.txt")를 입력하고 "Search"를 클릭합니다.해당 파일에 대한 핸들이 열려 있는 모든 프로세스가 나열되어야 합니다.
하여 어떤 가 잠겨 있는지 합니다..git\index실행 파일 잠금을 중지합니다.이 해제됩니다..git\index.
예를 들어, 프로세스 탐색기 검색은 다음을 표시합니다..git\index에 의해 있습니다.vmware-vmx.exe공유 폴더를 통해 Git repo에 액세스한 VMWare Player 가상 시스템을 일시 중단하여 문제가 해결되었습니다.
.git 폴더의 모든 파일에 ACL(어떤 식으로든)을 첨부했습니다.
으로확다니로 .ls -le폴더에 .git 폴더에 있습니다.
" " " " ACL " " 을 사용하여 할 수 .chmod -N) (폴더/파일 이름) 또chmod -RN (소리)
저도 이 문제가 있었습니다.제 경우, 다음과 같은 설명이 적용되지 않았습니다.
- 충분한 디스크 공간
- 충분한 권한이 있었고, 인덱스 파일을 쓸 수 있고, 이름을 바꿀 수 있고, 만들 수 있으며, 해결 방법은 아무것도 없었습니다.
- 창 다시 시작이 작동하지 않음
- 인덱스가 프로세스에 의해 잠기지 않음
제가 다른 (리눅스) 컴퓨터를 통해 윈도우 폴더에 접속했을 때까지, git는 문제없이 작동했습니다.일반 데비안 버스터 컴퓨터에서 사용하는 깃 버전과 관련이 있을 것입니다. 깃 1.2.20은 '새 인덱스를 쓸 수 없음' 오류를 제공하는 반면 우분투 포컬 가상 상자(깃 1.2.2)에서는 문제 없이 파일을 추가합니다.
Google 백업 및 동기화와 같은 일부 백그라운드 백업 솔루션은 인덱스 파일에 대한 액세스를 차단합니다.애플리케이션을 닫았고 소스 트리는 전혀 문제가 없었습니다.드롭박스도 마찬가지인 것 같습니다(@tonymayoral).
제 경우에는 동시에 실행되는 EGit이었습니다.이클립스를 다시 시작하면 정상적으로 작동합니다.
Windows(윈도우) 상자에 있는 경우 사용 중인 프로그램(소스 트리 또는 깃 터미널)이 관리자 권한으로 실행되고 있는지 확인합니다.저도 똑같은 오류 메시지를 받고 있었습니다.프로그램을 마우스 오른쪽 단추로 클릭하여 관리자로 실행하거나 속성을 변경하여 항상 관리자로 실행할 수 있습니다.
기본 재배치 중에 이 문제가 발생할 경우:
백업 소프트웨어, 안티바이러스, IDE 또는 기타 Git 클라이언트와 같은 일부 소프트웨어가 repo의 인덱스 파일을 잠그기 때문일 가능성이 높습니다.
대부분의 경우 잠금은 잠시 동안이므로 타이밍이 나쁘거나 운이 나빠서 발생합니다.
하만지,git rebase --continue다음 명령이 빈 커밋이라고 불평합니다.
The previous cherry-pick is now empty, possibly due to conflict resolution.
If you wish to commit it anyway, use:
git commit --allow-empty
이 문제를 해결하려면 실행하십시오.git reset그리고 해보세요git rebase --continue한 번
공간이 부족한 것이 문제입니다.정리 후 다시 시도
저도 같은 문제가 있었습니다.컴퓨터를 다시 시작했고 문제가 해결되었습니다.
git add'를 시도해 보셨습니까? 모든 변경 사항이 적용됩니까?(Git reset HEAD로 불필요하게 추가된 파일을 제거할 수 있습니다)
나의 경우에는 그것이nodemon인스턴스가 파일 시스템의 변경 사항을 감시하고 있습니다.
이유에서인지 어떤이인, 하는것을 하는 것.git addwsl 터미널에서 정상적으로 작동했습니다.하지만 숭고한 합병은 항상 저에게 이런 오류를 안겨줄 것입니다.알고 보니 VS 코드가 어떻게든 막고 있었습니다.VS 코드를 닫으면 작동합니다.누군가가 이 문제를 같은 방법으로 해결했습니다 - https://stackoverflow.com/a/47871586/6236710
나는 커밋을 다시 실행했고 그것은 효과가 있었습니다.
sbe:/var/xxxxx/rmm/sprcg2/app3536847/sas % git commit -m "My summary"
[master a2257ec] My summary
9 files changed, 2747 insertions(+), 7047 deletions(-)
rename ish_extracts/prog/{t.sas => query.sas} (55%)
rewrite ish_extracts/prog/t.sas (98%)
문제: git에서 수정된 파일을 체크아웃할 때 이 오류가 발생했습니다.ABC와 XYZ 두 사용자가 있었습니다.파일이 ABC의 uid:gid를 가지고 있지만 git 액세스 권한이 없고 동일한 파일을 체크아웃하려고 합니다.
제가 시도한 해결책은 XYZ가 git 액세스를 하고 sudo로 파일을 체크아웃하는 것입니다.!!
다음은 저에게 도움이 되었습니다.
컨텍스트:
서버에 프로젝트 작성
git status를 반환합니다.HEAD detached at <commit-SHA>현지에서 어떤 수술을 하든지 간에 이런 오류가 있었습니다.더 구체적으로 말하면:
- 겟체크아웃
- git reset HEAD --hard
해결책
- 파일을 간단히 제거했습니다.
<work-dir>/.git/index. - A
git statusProjet의 모든 파일이 추적되지 않음을 나타냅니다(여기서는 놀랄 일이 아닙니다). git reset HEAD --hard- 되돌아가기
HEAD detached at <commit-SHA>를 할때.git status하지만 그러면 당신은 할 수 있어야 합니다. git checkout <some-branch>
그리고 당신은 다시 정상 궤도에 올랐습니다!
중요!!
이것은 단지 제가 "메리" 건물이기 때문에 작동합니다.코드에 대한 중요한 수정이 수행되지 않았습니다.만약 당신이 실제로 "dev-time"에 있다면, 저는 당신의 작업을 먼저 저장하거나 다른 방법을 사용하는 것을 추천합니다.
도움이 되길 바랍니다 :).
Windows에서 GitExtensions를 사용할 때 이 문제가 발생했습니다.repo가 포함된 폴더에서 현재 사용자(나)에게 전체 권한을 부여하여 수정되었습니다.
Git Extensions에서 오류가 발생했지만 Visual Studio 2015에서 동일한 파일을 커밋할 수 있었습니다.
다른 때는 .git 폴더에서 "index" 파일을 삭제해야 했습니다.
제 경우는 좀 흥미롭습니다.
특정 커밋을 확인하기 위해 git 로그를 실행한 다음 제대로 종료하지 않고 ctrl+c를 눌러 종료합니다.
그러면 인덱스가 잠겨 있는 것 같습니다.그래서 다시 git log를 실행하고 Q를 눌러 종료합니다.
문제가 해결되었습니다.:)
아나콘다를 설치한 후에도 같은 문제에 직면했습니다.저는 허가와 디스크 프리와 같은 모든 솔루션을 시도했습니다.그래서 원격에서 레포를 제거하고 다시 복제했습니다.그것은 문제를 해결했습니다.
여러 가지 원인이 있다는 것은 알지만, 제 해결책은 Mac SMB 공유에서 연결을 끊고 다시 연결하는 것이었습니다.AFP 공유는 전혀 작동하지 않지만 SMB 공유는 작동합니다.계산해 보세요.
sudo와 함께 달리는 것은 나에게 효과가 있었습니다.
예: sudogit add -r
언급URL : https://stackoverflow.com/questions/16064513/git-fatal-unable-to-write-new-index-file
'programing' 카테고리의 다른 글
| LFol igit repo 및 작업 복사본 강제 적용 (0) | 2023.07.04 |
|---|---|
| WooCommerce 제품 검색을 사용하여 특정 post_type 양식 post_type 열을 검색하는 중 오류 발생 (0) | 2023.07.04 |
| 같은 도메인을 사용하여 NGINX 서버에서 장고와 워드프레스를 실행하는 방법은 무엇입니까? (0) | 2023.07.04 |
| 날짜 범위별 Firestore 쿼리 (0) | 2023.07.04 |
| 기존 디렉토리 구조에 보관 압축 풀기 (0) | 2023.07.04 |