git의 Homebrew 설치는 시스템 버전(/usr/bin/)보다 우선하지 않습니다.

git의 Homebrew 설치는 시스템 버전(/usr/bin/)보다 우선하지 않습니다.

OS X(또는 Xcode)는 git 1.7.something과 함께 번들로 제공되지만 brew install git(1.8.0) 이후에는 which git계속 이전 /usr/bin/git.

지금 $PATH를 echo하면 다음과 같은 결과가 나옵니다.

/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin

Homebrew 항목이 우선되어야 하지 않나요?

usr/local/git/bin또한, 나는 그것이 결국 어디서 나오는지 전혀 모릅니다 .

답변1

알았어요. 대답은 귀하의 질문에 있습니다. Brew는 git을 /usr/local/git/bin(가 아닌 ) 에 설치 하지만 해당 경로 /usr/local/bin가 이후에 있으므로 해당 항목을 먼저 얻습니다. /usr/bin내 의견은 which -a git당신에게 이 방향을 지적했어야 했습니다.

답변2

나는 또한이 문제를 겪었습니다.

homebrew를 통해 git을 설치한 후 실행하면 brew doctorJoe가 위에서 언급한 것처럼 설치 위치가 먼저 오기 때문에 시스템이 이전 git을 실행하고 있다는 경고가 표시됩니다.

그러나 동일한 경고에서 homebrew는 문제를 해결하기 위한 코드를 제공합니다.

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

답변3

.~/binPATH​이것은 my 의 첫 번째 비트 중 하나입니다 .bashrc.

case ":$PATH:" in
  *:$HOME/bin:*) ;;     # do nothing if $PATH already contains $HOME/bin
  *) PATH=$HOME/bin:$PATH ;;  # in every other case, add it to the front
esac

이를 적용한 다음 선택적으로 Homebrew 관리 버전만 git시스템 버전보다 우선하도록 만듭니다(대신모든Homebrew 관리 바이너리) 및 쉘 세션 전용(대신모두GUI 프로그램을 포함하여 어디서나 시작되는 프로그램)은 심볼릭 링크만큼 간단합니다.

ln -s /usr/local/bin/git ~/bin/git

관련 정보