git commit 중지됨-트리 빌드 오류
변경 사항을 적용 할 수 없습니다.
$ git commit
error: invalid object 100644 13da9eeff5a9150cf2135aaed4d2e337f97b8114 for 'spec/routing/splits_routing_spec.rb'
error: Error building trees
지금까지 시도했습니다.
$ git fsck | grep 13da
missing blob 13da9eeff5a9150cf2135aaed4d2e337f97b8114
그리고 또한:
$ git prune
error: Could not read 1394dce6fd1ad15a70b2f2623509082007dc5b6c
fatal: bad tree object 1394dce6fd1ad15a70b2f2623509082007dc5b6c
그리고 또한:
$ git fsck | grep 13da
missing blob 13da9eeff5a9150cf2135aaed4d2e337f97b8114
하지만 도움이되지 않았습니다. 파일을 삭제하고 커밋 한 후 다시 도입해야합니까? git commit을 다시 가져 오면 약간의 역사를 잃을 의향이 있습니다.
git 저장소에 손상된 개체가있을 수 있습니다.
이 저장소의 원격 또는 다른 복제본이있는 경우 문제가있는 파일을 가져와 로컬 저장소에서 대체 할 수 있습니다.
원하는 파일은 다음 위치에 있습니다.
/repo/.git/objects/13/da9eeff5a9150cf2135aaed4d2e337f97b8114
이 오류는 hash가 포함 된 파일 13da9eeff5a9150cf2135aaed4d2e337f97b8114이 있고이 해시가에 없거나 .git/objects/../비어 있음을 의미합니다. 이 오류가 발생했을 때 파일 경로없이 오류에이 해시 만있었습니다. 그럼하려고 노력 git gc --auto하고 git reset --hard. 이 명령 중 하나 (이 명령으로 문제가 해결되지 않음) 후 오류를 유발하는 파일의 경로를 얻었습니다.
객체 해시를 생성하기 만하면됩니다.
git hash-object -w spec/routing/splits_routing_spec.rb
자세한 내용은 설명서를 참조하십시오 . 문서에는이 오류를 복구하는 추가 방법이 있습니다.
추신 이것은 나에게 도움이 된 유일한 방법이었습니다.
git reset --hard 리포지토리를 정상으로 되돌려 야하지만 커밋되지 않은 변경 사항은 손실됩니다.
변경 사항으로 인해 문제가있는 파일이 추가되는 경우 색인에서 제거하고 다시 추가 할 수 있습니다.
git reset <file>
git add <file>
나에게 그것은 단지 권한 문제였습니다. '수도'로 달리면 효과가있었습니다. 아마도 Mac 환경과 관련이 있습니다.
이는 Dropbox 및 Jianguoyun과 같은 일부 타사 동기화 앱으로 인해 발생할 수 있습니다. 내 경험에 따라 두 가지 방법이있을 수 있습니다.
- 최근 동기화 작업을 실행 취소 할 수 있습니다.
- 폴더에서 관련 파일을 제거하고 커밋 한 다음 파일을 다시 이동합니다.
쉬운 해결 방법, 파일의 트랙에 실제로 신경 쓰지 않는 경우 파일을 복제하고 원본을 제거하고 먼저 삭제 및 추가를 커밋 한 다음 원본으로 다시 이름을 바꿀 수 있습니다.
Git은 정상적으로 다시 빌드되어야합니다.
제 경우에는 다음과 같이 해결했습니다.
git reset --mixed
제 경우에는 깨진 원격 지점의 파일입니다. 나는 그것을 다음과 같이 해결했다.
- 원격 분기를 전혀 제거
$ git remote rm origin - 리모컨을 다시 추가하십시오.
$ git remote add origin <the-remote-url> - 리모컨을 다시 가져옵니다.
$ git fetch origin - 원래의 원하는 분기로 재설정 하드 (예 :)
develop:$ git reset --hard origin/develop
그러면 모든 것이 정상으로 돌아갑니다.
제 경우에는 다른 버전의 git 때문이었습니다. 나는 git의 공식 Windows 포트를 통해 내 저장소를 사용하고 있었고 동일한 버전 번호로 MinGW 포트를 사용하기 시작했습니다.
MinGW git로 커밋하려고 할 때이 문제가 발생하기 시작했습니다. Windows Git으로 다시 전환하면 문제가 해결되었습니다.
참고 URL : https://stackoverflow.com/questions/14448326/git-commit-stopped-working-error-building-trees
'Program Club' 카테고리의 다른 글
| 왜 "할당되지 않은 로컬 변수 사용"오류를 컴파일합니까? (0) | 2020.12.03 |
|---|---|
| iOS6 viewDidUnload 사용되지 않음 (0) | 2020.12.03 |
| 파이썬에서 암호 학적으로 안전한 난수를 어떻게 만들 수 있습니까? (0) | 2020.12.03 |
| NSURLSession : URL 요청에 대한 시간 초과를 늘리는 방법은 무엇입니까? (0) | 2020.12.03 |
| AngularJS 지시문에서 자식 요소 찾기 (0) | 2020.12.03 |