Mac에서 Homebrew가 설치된 git을 사용하는 방법은 무엇입니까?

homebrew를 사용하여 최신 버전의 git (1.8.3)을 설치했지만 입력 할 때

git --version 

터미널에서 다음과 같이 인쇄됩니다.

git version 1.7.10.2 (Apple Git-33) 

Git의 이전 버전을 새 버전으로 바꾸려면 어떻게해야합니까?

댓글

  • 몇 가지 좋은 답변이 있으므로 질문에 대해 댓글을 달고 싶습니다. homebrew 또는 GUI 클라이언트의 소스에서 git을 설치하기위한 명시 적 지침을 찾고 있습니까? 아니면 OS X가 핵심 OS와 함께 여러 버전의 git을 번들로 제공하는지 확인하고 있습니까? opensource.apple.com/source/Git (FWIW-현재까지 Apple 번들을 본 최신 git I ‘ Git-37에서 가져온 1.7.12.4)

Answer

유용한 답변에 감사드립니다. 제 경우에는

export PATH="/usr/local/bin:${PATH}" 

~/.bash_profile 다음에

source ~/.bash_profile 

내 사용자의 문제를 해결했습니다.

댓글

  • 사용자간에 변경 사항이 영구적으로 적용되도록하려면 /etc/paths의 /usr/bin 위에있는 div id = “c71e5b6b67”>
  • 제안 된 솔루션입니다. 문제를 진단하기 위해 brew doctor를 실행할 때 Homebrew 자체에서
  • 이 답변은 KevinT가 제안한 /etc/paths. /usr/bin에 iv id가있는 경우 ” export ” 만 정의하는 것만으로는 충분하지 않을 수 있습니다. /usr/local/bin (brew에서)보다 = “7e362fe136″> 우선 순위 ” …
  • 기억 터미널을 다시 시작하려면! ‘ 아래에서 Juan Diego Gonzales ‘의 댓글을 볼 때까지 저에게 발생하지 않았습니다.
  • @Souleiman : 다시 시작하는 것이 아닙니다. ‘ 필요하지 않습니다. source ~/.bash_profile가 다시 읽습니다. 다시 시작하는 것이 아마도 더 빠르고 / 쉽습니다. 🙂
  • 답변

    상태 2020

    여기에 언급 된 모든 트릭은 여러 답변에서 macOS Sierra, Mojave & Catalina에서 더 이상 필요하지 않습니다. export PATH="..."~/.bash_profile에 대한 수정 사항은 잊어 버리세요.

    그냥

    brew install git 

    완료되었습니다.

    확인하려면 새 터미널 창 / 탭을 열고 입력

    git --version 

    창을 여는 것을 잊지 마십시오. install를 시작하기 전에 열려 있던 터미널은 변경 사항을 상속하지 않습니다.

    답변

    알겠습니다. scm에 대해 진지하게 생각할 준비가되었습니다.

    $ git --version git version 1.9.5 (Apple Git-50.3) 

    아니요, 그게 제가 원하는 것이 아닙니다. 나는 < 3 홈브류이므로 :

    $ brew install git 

    모두 준비 되었습니까?

    $ git --version git version 1.9.5 (Apple Git-50.3) 

    도! (머리가 긁힘)

    $ which git /usr/bin/git 

    아, Apple의 자식은 / usr / bin에 있으므로 홈브류를 능가합니다. 어떻게해야합니까?

    (A) Apple의 바이너리 이름 만 변경

    (B) 홈브류로 관리되는 바이너리가 우선합니다 :

    [edit PATH export eg ~ / .zshrc (oh-my-zsh + iTerm2 FTW! / tangent)]

    [구체적으로 : move / usr / local / bin / git : before / usr / bin :]

    … 그리고 / 또는 (예를 들어 더 광범위하게 홈브류 물건이 시스템 설치를 능가하고 모든 쉘과 사용자에게 우선권이 적용되도록하기 위해) / etc / paths 파일을 편집합니다. [/ usr / local / bin 위로 / usr / bin]

    하지만 가장 간단하고 최소한의 침습적 접근 방식을 가정하면 :

    $ sudo mv /usr/bin/git /usr/bin/git-apple 

    작동 했습니까?

    $ which git /usr/local/bin/git 

    지금까지는 정말 좋았습니다. 이제 진실의 순간입니다.

    $ git --version git version 2.2.1 

    w00t! 🙂 읽을 시간입니다 http://git-scm.com ! 🙂

    댓글

    • PS / usr / bin 편집 위험에 대한 댓글 관련 댓글 : IMHO it ‘ s NBD. (글로벌 노매드 ‘의 제안을 좋아합니다. ” sudo ln -s / usr / local / bin / git / usr / bin / git ” … ” / usr / bin / git ” 명시 적으로 양조 관리를 얻을 것입니다.하지만 제 생각에 git을 설치하면 ‘ 시스템에서 git의 소유권을 갖게됩니다. 이전 버전을 사용하는 알 수없는 프로세스에 대한 걱정 , git의 대체 버전이 잘못 배치되었을 수 있습니다. 기능뿐 아니라 보안을 위해 git 버전을 최신 상태로 유지하고 직접 관리하는 것이 좋습니다. Homebrew를 사용하면이 작업을 쉽게 수행 할 수 있습니다. /$0.02
    • ‘ 나에게 적합하지 않습니다. 실행 취소하려면 다음을 수행하십시오. sudo mv / usr / bin / git-apple / usr / bin / git. Juan Diego Gonzales ‘의 댓글이 작동했습니다 (기본적으로 수락 된 답변을 따른 다음 터미널을 다시 시작).
    • which git/usr/local/bin/git를 가리키는 경우에도 ‘ t는 나를 위해 일합니다. 이 문제를 해결하려면 GitHub Mac 앱을 제거해야했습니다.
    • MacOS 10.12.5 : sudo mv /usr/bin/git /usr/bin/git-apple mv: rename /usr/bin/git to /usr/bin/git-apple: Operation not permitted
    • brew doctor. 2020 년에는 brew link —overwrite git

    Answer

    “brew (brew install git)를 통해 최신 git을 설치했습니다. 그렇지 않은 경우이 한 줄짜리 (brew doctor에서 제안한대로) 실행” 이미 있음 :

    echo "export PATH=/usr/local/bin:$PATH" >> ~/.bash_profile 

    그런 다음 터미널을 종료하고 다시 엽니 다. (bash 세션을 다시 시작하십시오). ZSH와 Bash는 PATH의 내용을 캐시하므로 PATH가 이미 정확하더라도이 작업을 수행해야합니다 (내장 명령 hash에 대한 설명서 참조).

    그렇게하면 문제가 정말 빨리 해결됩니다.

    댓글

    • 이것이 승인 된 답변과 어떻게 다른가요?
    • In 제 경우에는 ‘ 터미널을 다시 시작해야한다는 것을 몰랐습니다. 그래서 일부 사람들에게 도움이 될 수 있습니다. 하나의 라이너 때문에 허용되는 것보다 빠릅니다. 대회 인 경우 ‘ 제 답변이 잘못된 것 같습니다. 그렇지 않으면 기여한다고 생각합니다. (이 대신 편집을 원하면 말씀해주세요).
    • Homebrew를 설치할 때 한 줄로 작성합니다.
    • 이 답변이 도움이되는 것으로 나타났습니다. 터미널을 다시 시작하는 것은 .bash_profile의 작동에 익숙하지 않은 많은 사람들에게는 분명하지 않은 문제이며 나머지 우리에게는 부드럽게 상기시켜줍니다.
    • @JuanDiegoGonzales 훌륭한 관찰입니다! git을 설치 한 후에도 똑같은 일이 궁금해서 ‘ 이유를 몰랐습니다. 캐시 힌트 후에 좀 더 조사했습니다. unix.stackexchange.com/q/5609/52921

    답변

    해본 결과 저에게 효과적입니다.

    brew link --overwrite git 

    댓글

    • Mojave (10.14.4)에서 저를 위해 일함

    답변

    입력 할 때

    git --version 

    Terminal.app 또는 콘솔에 다른 질문에 대한 귀하의 의견에 해당 버전이 표시되었습니다. returns는 / usr / bin / git의 git입니다.

    Xcode 4.5 (및 최신 버전)를 설치 한 경우

    xcrun git --version 

    in Terminal.app 또는 콘솔에서 반환되는 버전은 Xcode 앱 번들의 git입니다.

    Homebrew를 사용하여 git을 설치하고 업데이트하는 경우 가장 간단한 해결책은

    1. 관리자 비밀번호를 입력하라는 메시지가 표시되므로 관리자 권한이 있는지 확인합니다.
    2. mv를 사용하여 원래 위치의 이름을 변경합니다. 예 :

      sudo mv / usr / bin / git / usr / bin / git-ORIGINAL

    3. Homebrew와 함께 설치 한 git 바이너리에 “ln -s”를 사용하여 소프트 링크를 만듭니다. .

    MattDMo는 댓글에 더 나은 솔루션을 제공합니다.

    댓글

    • 100 % 안전한가요? Mac과 관련된 모든 것이 손상됩니까?
    • 설명 된 단계를 따르면 솔루션이 ‘ 해당 git 실행 파일이 삭제되지 않았기 때문에 사전 설치된 모든 것을 손상시키지 않습니다. 이것이 2 단계에서 원래의 / usr / bin / git 이름을 변경해야하는 이유입니다. as /usr/bin/git.BACKUP
    • 제발 ‘이 작업을 수행하지 마십시오. ‘ t /usr/bin를 엉망으로 만듭니다. ‘ 다른 프로그램을 사용할 가능성이 있기 때문입니다. ‘ 특정 버전과 관련된 변덕에 의존한다는 것도 알지 못합니다. 아무것도 이동하지 않고 가장 쉬운 해결책은 /usr/bin 이전에 $PATH 환경 변수에 /usr/local/bin를 추가하는 것입니다. div>-IIRC, homebrew가 /usr/local/bin
    • 에 설치됩니다.

    • @MattDMo에게 감사합니다.이 경우 가장 좋은 방법 인 것 같습니다.

    Answer

    brew와 함께 git을 설치하고 실행합니다.

    brew link --force git

    터미널을 닫았다가 다시 열어 which git를 실행합니다.

    댓글

    • 기본 경로는 어떻게 변경 되나요?
    • 이 방법으로 xcode ‘ s git을 재정의했습니다.
    • 실행 중 오류가 발생했습니다. 하지만 brew link --overwrite git 작동

    답변

    이름을 바꿔야합니다. /usr/bin/에있는 apple의 원래 자식을 e. 지. git-org는 /usr/bin가 일반적으로 양조 항목이있는 경로 디렉토리에서 /usr/local/bin 앞에 있기 때문입니다.

    따라서 :

    cd /usr/bin sudo mv git git-org 

    그리고 Brew git을 연결하는 것을 잊지 마십시오.

    brew link git 

    이것은 /usr/local/bin$PATH 환경 변수에 있습니다.그래도 문제가 발생하면

    brew doctor 

    를 실행하고 거기에 언급 된 문제를 수정하십시오.

    댓글

    • / usr / bin에있는 항목의 이름을 변경하거나 변경하지 마십시오. Apple thigs가 손상 될 수 있으며 시스템 또는 XCode 업데이트를 수행 할 때 변경 될 수 있습니다. 그것이 설계된 경로를 사용하십시오.
    • @ 포인트가 있습니다. 하지만 / usr / bin에서 git 만 변경하면 문제가 발생하지 않을 것이라고 생각합니다. 저에게는 몇 달 동안 작동합니다.
    • 일반적으로 / usr / bin에서 변경하는 것이 나쁜 소식이라는 데 동의하지만 OS를 기억할 수는 없습니다 ‘ X는 실제로 git을 사용하므로 피해는 미미할 수 있으며 영수증과 일치하는 ” 깨끗한 ” 시스템에만 관련 될 수 있습니다. 피해는 OS X 업데이트가 새 git을 이전 버전으로 대체 할 수 있으므로 시스템 경로 위치 외부에서 새 바이너리를 찾는 일반적인 관행입니다.
    • 추가하는 것이 훨씬 더 쉬울 것 같습니다. /usr/local/bin (homebrew ‘의 설치 디렉토리, IIRC)를 $PATH로 이동합니다. id = “6742467b47”>

    이름을 바꾸고 백업하는 등의 작업을 수행하는 대신

    답변

    git-scm.com에서 직접 git을 설치하고 git의 apple (이전) 버전 대신 최신 다운로드 git을 사용하려는 경우

    1. git-scm에서 git 설치 .com
    2. 대부분 새 git은 /usr/local/bin/git
    3. 에 설치 될 것입니다.

    4. git --version를 사용해보세요. Apple 이전 버전의 git을 반환하는 경우 아래로 진행합니다.
    5. cd ~ (디렉터리를 홈 디렉터리로 변경)
    6. vi .bashrc
    7. i (vi 편집기에 텍스트 삽입)
    8. export PATH.......가있는 줄을 찾은 경우 내보내기 상단의 Enter 키를 누르고 다음을 입력합니다. export PATH=/usr/local/:$PATH (PATH 변수에 각별히주의를 기울이십시오. 그렇지 않으면 OS에 문제가 발생할 수 있습니다.) 새 git은 /usr/local/git에 설치해야합니다.)
    9. esc를 누릅니다.
    10. Enter :wq ( .bashrc 파일 저장)
    11. 터미널을 종료하고 새 터미널을 시작합니다.
    12. 이제 git --version (새 버전이 표시되어야 함)

    답변

    경로 변경을 방지하려면 간단한 별칭을 사용하세요.

    alias git=/usr/local/bin/git 

    답변

    이 게시물을 포함하여 많은 것을 시도했습니다. ” s 답변. 마지막으로 Xcode의 추가 도구 폴더를 간단히 삭제하여 Xcode 대신 brew 버전의 git을 실행할 수있었습니다.

    sudo rm -rf /Library/Developer/CommandLineTools

    Answer

    설치에 brew install git를 사용할 때 git 아래 :

     ==> Summary 🍺 /usr/local/Cellar/git/2.29.2: 1,480 files, 39.7MB  

    로그의 앞부분에 오류가 표시되어 놓쳤을 수도 있습니다.

     ==> Downloading https://homebrew.bintray.com/bottles/git-2.29.2.big_sur.bottle.t Already downloaded: /Users/chadjinik/Library/Caches/Homebrew/downloads/08165d120fcebc7823c487a6778b2ea0e67fd2cd9177d6e7d656268f474ab5da--git-2.29.2.big_sur.bottle.tar.gz ==> Pouring git-2.29.2.big_sur.bottle.tar.gz Error: The `brew link` step did not complete successfully The formula built, but is not symlinked into /usr/local Could not symlink bin/git Target /usr/local/bin/git already exists. You may want to remove it: rm "/usr/local/bin/git" To force the link and overwrite all conflicting files: brew link --overwrite git  

    그냥 실행하세요 :

     brew link --overwrite git  

    당신은 잘할 것입니다.

    p>

    Answer

    Git의 출처에 따라 다릅니다. Xcode는 예를 들어 경로의 앞부분에있는 버전을 제공합니다.

    아마도 입력

    which git 

    이전 항목이 어디에 있는지 보여줍니다.

    댓글

    • ‘는 /usr/bin/git
    • 두 개의 설치처럼 보입니다. 일반 (다운로드 가능한) git 버전이 / usr / local / git / …로 이동한다고 생각합니다. ‘ 경로에 추가하거나 다른 항목을 제거하는 질문입니다 (또는 둘 다)

    답글 남기기

    이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다