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 doctor
Joe가 위에서 언급한 것처럼 설치 위치가 먼저 오기 때문에 시스템이 이전 git을 실행하고 있다는 경고가 표시됩니다.
그러나 동일한 경고에서 homebrew는 문제를 해결하기 위한 코드를 제공합니다.
$ echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile
답변3
.~/bin
PATH
이것은 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