[svn] SVN-업데이트 중 체크섬 불일치

Subversion에서 일부 파일을 업데이트하려고하면 오류가 발생합니다.

org.tigris.subversion.javahl.ClientException:
Checksum mismatch while updating 'D:\WWW\Project\\.svn\text-base\import.php.svn-base'; expected: '3f9fd4dd7d1a0304d8020f73300a3e07', actual: 'cd669dce5300d7035eccb543461a961e'

왜 이것을 얻습니까? 어떻게 고칠 수 있습니까?



답변

수정하는 가장 쉬운 방법 (변경 사항이 많지 않은 경우)은 변경 사항을 다른 디렉토리에 복사하고 프로젝트가 체크 아웃 된 디렉토리를 삭제 한 다음 프로젝트를 다시 체크 아웃하는 것입니다.

그런 다음 변경 사항을 다시 복사하고 (.svn 폴더를 복사하지 않음) 커밋하고 계속합니다.


답변

SVN 1.7+를 사용하는 경우 여기에 설명 된 해결 방법이 있습니다 .

요약하자면 :

  1. 문제를 일으키는 파일이있는 폴더로 이동합니다.
  2. 명령 실행 svn update --set-depth empty(참고 : 이렇게하면 파일이 삭제되므로 먼저 복사본을 만드십시오!)
  3. 명령 실행 svn update --set-depth infinity

답변

나는 비슷한 문제가 있었다. 주요 공급자는 안티 바이러스 “FortiClient”(안티 바이러스 + VPN CLient)였습니다. 비활성화했을 때-모든 업데이트 / 체크 아웃이 올바르게 이루어졌습니다.


답변

이 문제를 해결하는 더 쉬운 방법을 찾았습니다. 이클립스에서 직접 할 수는 없습니다. 단계 :

  1. Windows에서 작업 공간 폴더 구조로 이동
  2. 폴더 이름 바꾸기
  3. 일식에서 새로 고침
  4. 이제 폴더와 파일이 Eclipse의 프로젝트에서 제거되고 새 이름이 바뀐 폴더 아래에 나타납니다.
  5. 이제 “저장소와 동기화”옵션을 시도하십시오.

그러면 .svnfolder의 텍스트 기본 폴더가 복원됩니다. 오류를 업데이트하는 동안 체크섬 불일치가 더 이상 나타나지 않습니다.


답변

이것은 Eclipse 플러그인을 사용하고 동기화하는 나에게 발생했습니다. 문제를 일으키는 파일에는 로컬 변경 사항이 없었습니다 (실제로 마지막 업데이트 이후 원격 변경 사항도 없음). 파일에 대한 다른 수정없이 파일에 대해 “되돌리기”를 선택했고 모든 것이 정상으로 돌아 왔습니다.


답변

동일한 오류가 있지만 하나의 파일에 대해 발생했습니다. IntelliJ IDEA에서 파일의 복사본을 만든 다음 프로젝트로 이동하여 해당 파일을 삭제 한 다음 성공적으로 커밋 할 수있었습니다. 그런 다음 동일한 이름으로 새 파일을 만들고 내용을 다시 복사합니다. 개정 내역을 잃을 것 같지만 작동합니다.


답변

함께 일하는 동료가있는 경우 :

1) 문제를 일으키는 파일의 이름을 변경하도록 요청하고 commit

2) 당신 update(이제 다른 이름을 가진 유효하지 않은 체크섬이있는 파일이 보입니다)

3) 원래 이름으로 다시 이름을 바꿉니다.

4) commit(동료에게 update파일 이름을 초기 상태로 되돌려 달라고 요청 )

이것은 나를 위해 문제를 해결했습니다.