2009-05-21 1 views
19

Windows에서 로컬 수은 저장소를 복제하려고합니다."사례 접기"오류가 발생했습니다. 복제본을 복제하려고 시도했습니다.

는이 오류를 얻을 :

C:\temp\toolkit1.1>hg clone \src\toolkit 
    destination directory: toolkit 
    updating working directory 
    abort: case-folding collision between sdk/Api.h and sdk/api.h 

내가 어떤 점에서 API.H의 대소 문자를 변경처럼 보이는,하지만 난이 문제를 해결하는 방법을 모르겠어요. 어떤 팁?

나는 버전을 사용하고 있습니다 : 1.2.1

답변

16

이렇게하면 대소 문자를 구분 파일 시스템 (윈도우)에 의욕 저장소와 작업 할 때 종종 발생하는 문제입니다. Mercurial wiki의 Fixing Case Collisions을 참조하십시오.

아마도 가장 쉬운 방법은 Unix 컴퓨터에 대한 액세스 권한이 있으면 프로젝트를 체크 아웃하고 문제가되는 파일을 제거하고 변경 사항을 먼저 병합 한 다음 커밋하고 푸시하는 것입니다.

+4

완벽을 기하기 위해 : repo 파일의 이름이 예를 들어에서와 같이 변경되면 Linux/UNIX 시스템에서 대소 문자가 충돌 할 수 있습니다. Api.h ~ api.h. 모두 Windows에서 비명을 지르지 만 Mac에서는 Windows가 없어도 나에게 일어난 일입니다. – frnhr

+2

맥과 윈도우는 유닉스 시스템 임에도 불구하고 여전히 대소 문자를 구별하지 못하기 때문에 ............. – Flatline

+0

누군가가 @ Cek의 코멘트에서 부당한 가정을하는 경우를 대비해서 : 경우 반대 방향으로, 즉 api api 문제가 발생할 것입니다. –

4

Windows의 파일 이름을 Api.h.old로 변경하여이 문제를 해결했습니다. 저지. 그런 다음 수정 된 대소 문자를 사용하여 Api.h로 이름을 바꿉니다. 다시 약속하기.

그런 다음 클론이 작동했습니다.