[git] git clone 중에 'fatal: unable to checkout working tree' 에러 해결 방법
포스트
취소

[git] git clone 중에 'fatal: unable to checkout working tree' 에러 해결 방법

git clone 중에 ‘fatal: unable to checkout working tree’ 에러 해결 방법

문제 확인

Windows 기반 vscode에서 github repository를 git clone 하는 중에 아래와 같은 에러 메시지가 나왔다.

fatal: unable to checkout working tree

fatal: unable to checkout working tree warning: Clone succeeded, but checkout failed.

.git 디렉토리는 생성되며 Clone은 성공했지만, checkout은 실패하여 레파지토리 내 파일들이 하나도 복사되지 않은 상태였다.

문제 원인

경고 메시지를 읽어보면 해답을 찾을 수 있는데,

error: invalid path '입출력과 사칙연산/10998(A*B).py

‘입출력과 사칙연산/10998(A*B).py’ 의 경로가 유효하지 않다고 나와있다.

이유가 뭘까?

이 파일은 내가 MacOS에서 작업 후 git push 한 파일로, 유닉스 기반인 MacOS에서는 파일의 이름에 * 문자를 사용할 수 있다.

그러나 Windows에서는 아래와 같은 9개 문자는 파일명으로 사용할 수 없다. 그래서 git clone으로 파일을 가져오지 못한 것 같다.

1
2
파일 이름에는 다음 문자를 사용할 수 없습니다.
\ / : * ? " < > |

cannot contain any of the following characters.png

기호이름용도
\역슬래시파일 구분자(Windows 파일경로)
/슬래시파일 구분자(Unix 파일경로)
:콜론 
*별표Wildcard 문자
?물음표Wildcard 문자
큰따옴표 
<보다 작음입력 전달(redirect)
>보다 큼출력 전달(redirect)
|세로줄파이프

해결 방법

Windows에서 파일명에 사용할 수 없는 * 문자를 다른 문자로 바꾸어주면 된다.

나는 repository에 있는 파일명 입출력과 사칙연산/10998(A*B).py입출력과 사칙연산/10998(AxB).py 로 rename 해주었다.

여러 OS를 동시에 사용하는 경우에는 파일명을 지정하는데 신경을 써야겠다.

참고 자료

제타 위키 - 파일 이름에는 다음 문자를 사용할 수 없습니다

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.

[3GPP] UE ID 정의 및 종류(PLMN, IMSI, GUTI, SUPI/SUCI)

[IMS] Cx Interface 호처리 정리