CentOS 7 시스템이 있습니다. git 2.27.0이 설치되어 있지만 알 수 없는 이유로 설치하면 https gitlab 인스턴스와 통신하지 않습니다. "'https'에 대한 원격 도우미를 찾을 수 없습니다"라는 오류가 계속 발생합니다.
그래서 git 패키지가 설치되어 있지 않다고 주장하는 'sudo yum 업그레이드 git'을 사용하여 git 업그레이드를 시도했습니다. 하지만 'git --version'을 실행하면 "git version 2.27.0"이 표시됩니다. "git 위치"는 "git: /usr/local/bin/git"을 제공합니다. 'sudo yum 제거 git'을 수행하면 "인수와 일치하지 않습니다: git, 제거 표시된 패키지가 없습니다"라는 메시지가 표시됩니다.
나는 패션 후에 작동하는 git 설치를 시도했습니다. 마찬가지로 새로운 git 인스턴스가 내 시스템에 설치됩니다. 설치가 제대로 작동했고 git 2.31.1이 설치되었다는 메시지를 많이 받았습니다. 하지만 git 버전을 사용하면 다시 2.27.0을 얻게 됩니다. 그런 다음 git을 다시 제거하면 2.31.1 버전이 제거되고 2.27.0이 유지됩니다. 그러나 다시 한번 yum은 그것이 실제로 존재하지 않는다고 주장합니다. $PATH에는 /usr/bin 앞에 /usr/local/bin이 있습니다. 나는 /usr/bin에 최신 복사본을 설치하고 /usr/local/bin에 이미 있는 복사본을 완전히 무시한다고 가정합니다.
그렇다면 yum에게 /usr/local/bin의 복사본을 제거하도록 지시하는 방법이 있습니까? 왜냐하면 'sudo yum Remove /usr/local/bin/git'을 시도하면 "인수와 일치하지 않음: /usr/local/bin/git"이라는 메시지가 표시되기 때문입니다.
답변1
git이 폴더에 있다는 사실은 /usr/local/bin
시스템 패키지 관리를 통해 설치되지 않았음을 의미합니다.
소스에서 컴파일되었을 수도 있고, 다르게 설치되었을 수도 있습니다. 알 수 있는 방법이 없습니다.
소스에서 컴파일하고 설치했으며 소스 코드가 여전히 시스템에 있는 경우 make uninstall
소스 폴더를 사용하여 제거할 수 있습니다.
그렇지 않은 경우 해당 git 설치에 속하는 모든 파일을 수동으로 삭제해야 합니다(또는 최소한 git 바이너리를 삭제하고 시스템에 더 많은 고아 파일이 있다는 것을 무시하십시오). 가장 좋은 기회는 설치한 사람에게 물어보는 것입니다.
패키지 관리자를 사용하여 git을 설치할 수 있습니다. 이전 설치를 대체하거나 경로 변수에서 bin 디렉터리의 순서를 조정하여 "기본"으로 만들 수 있어야 합니다.