Software Development

Git version 2.35.2 - 'git status' 에러 코드 128

es6.kr 2022. 4. 15. 13:01
반응형

GIT 2.35.2 업데이트

WSL(Windows Subsystem for Linux) 환경의 폴더를 SourceTree로 열 때 발생하는 오류 메시지에 대해 다룬다. 이 오류는 윈도우에서 로그인 중인 유저와 WSL에서 해당 파일/폴더의 소유자가 다를 때 발생한다. Git v2.35.2 이후에는 이를 보안상의 이유로 기본적으로 차단하며, 예외를 설정하여 폴더 접근을 허용해야 한다.

이 문제를 해결하는 몇 가지 방법은 다음과 같다:

  1. 특정 WSL 폴더를 안전한 디렉토리로 설정

    • WSL 폴더를 등록할 때, //wsl$/Ubuntu-... 앞에 %(prefix)/를 추가해야 한다.
    • 예시 명령어:
        git config --global --add safe.directory '%(prefix)///wsl$/Ubuntu-20.04/home/ubuntu/airflow'
  2. 모든 폴더를 안전한 디렉토리로 설정

    • 모든 폴더에 대해 * 경로를 추가하여 설정할 수 있다.
    • 예시 명령어:
        git config --global --add safe.directory '*'

참고사항

  • SourceTree는 WSL의 Git이 아니라 윈도우의 Git을 사용하기 때문에, 해당 명령어는 윈도우 터미널에서 입력해야 한다.
  • safe.directory 경로에 /home/ubuntu/*, /home/ubuntu/**과 같은 와일드카드 경로는 현재 지원되지 않는다.

위 방법을 적용하면, WSL에서 Git을 사용할 때 발생하는 error: failed to get owner와 같은 오류를 해결할 수 있다.


Git - 'git status' 에러 코드 128로 실패함: error: failed to get owner for '//wsl$/Ubuntu-...' fatal: unsafe repository

반응형