반응형
문제
$ xcrun swift run ...
...
...
Fetched https://github.com/apple/swift-argument-parser from cache
warning: 'swift-async-algorithms': skipping cache due to an error: Couldn’t fetch updates from remote repositories:
fatal: cannot use bare repository '/Users/user/Library/Caches/org.swift.swiftpm/repositories/swift-async-algorithms-c3a8d752' (safe.bareRepository is 'explicit')
...
...
해결
~/.gitconfig 에서 아래 두 줄을 삭제한다.
[safe]
bareRepository = explicit
아래 취약성을 보완하기 위해 추가된 git config 속성.
git repo는 다른 repo를 별도 처리없이 그대로 포함하고 있을 수 있다. 사용자가 git repo로 부터 받아서 저장해둔 저장소(regular repo 라고 표현하고 있다.)는 git이 직접 권한을 가지고 컨트롤 하는 반면, regular repo 가 가지고 있는 다른 repo(ex. SPM 등으로 의존성을 가지고 있는 repo. 여기서는 bare repo 라고 표현하고 있다.)는 컨트롤 할 수 없다.
ex.
git clone ssh://git@host.example/helloworld.git
cd helloworld
git status # <-- Safe
cd malicious_subdirectory
git status # <-- Dangerous
Solution origin:
https://forums.swift.org/t/fatal-cannot-use-bare-repository/75588/2
반응형
'iOS' 카테고리의 다른 글
UITests Error가 발생할 때 No target application path specified via test configuration (0) | 2023.02.20 |
---|---|
Xcode14 Apple Clang Compiler gnu++20 (0) | 2023.01.03 |
Xcode Device build. 시스템 키체인을 사용하고자 합니다. (0) | 2022.03.16 |
Xcode에서 자꾸 인증을 하라고 한다. "Authentication failed because no credentials were provided" 대응. (0) | 2022.02.11 |
WWDC21 Protect mutable state with Swift actors #1<Actor, Actor Reentrancy> (0) | 2021.07.04 |