Estou com um problema muito estranho quando tento usar a versão mais recente do git que acabei de instalar via homebrew. which git
está me apontando para a instalação do homebrew, mas a chamada git
retorna a versão original instalada com o OS X.
Verifiquei primeiro a versão original em que estava.
[user@home ~]$ git --version
git version 1.8.5.2 (Apple Git-48)
Depois fui para o homebrew para instalar a versão mais recente.
[user@home ~]$ brew install git
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/git-2.0.0.mavericks.bottle.2.tar.gz
######################################################################## 100.0%
==> Pouring git-2.0.0.mavericks.bottle.2.tar.gz
==> Caveats
The OS X keychain credential helper has been installed to:
/usr/local/bin/git-credential-osxkeychain
The 'contrib' directory has been installed to:
/usr/local/share/git-core/contrib
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
zsh completion has been installed to:
/usr/local/share/zsh/site-functions
==> Summary
🍺 /usr/local/Cellar/git/2.0.0: 1324 files, 31M
Parece que funcionou! Verifique se está apontando para o git correto
[user@home ~]$ which git
/usr/local/bin/git
Deve ser bom, certo? Não tão rápido
[user@home ~]$ git --version
git version 1.8.5.2 (Apple Git-48)
Isso é estranho. Estou realmente apontando para o idiota certo?
[user@home ~]$ ls -l /usr/local/bin/git
lrwxr-xr-x 1 user group 27 Jul 3 15:54 /usr/local/bin/git -> ../Cellar/git/2.0.0/bin/git
Claro que parece. Funciona quando eu chamo manualmente
[user@home ~]$ /usr/local/Cellar/git/2.0.0/bin/git --version
git version 2.0.0
Mas não tão git
[user@home ~]$ which git
/usr/local/bin/git
[user@home ~]$ git --version
git version 1.8.5.2 (Apple Git-48)
Alguma idéia do que poderia estar causando isso?
EDIT: Resolvido. source .bashrc
consertou. Ainda curioso para which
saber por que me devolveria o executável correto, mas não seria chamado, se alguém puder explicar isso.
$PATH
.Respostas:
Os shells mantêm um cache dos caminhos em que os executáveis foram encontrados na
$PATH
variável. Portanto, ele armazenou/usr/bin/git
em cache, e não/usr/local/bin/git
porque o último não existia quando o shell foi iniciado. A execuçãohash -r
no Bash a partir do seu terminal atual limpará esse cache; a primeira instância encontrada em$PATH
deve ser a que é executada.fonte
hash -r
trabalhou para mimEu tenho exatamente o mesmo problema. Aqui está a minha solução.
Depois disso, você não poderá ver nenhuma alteração ao executar
git --version
. Basta sair e fazer login novamente, executegit --version
novamente.fonte
source ~/.bash_profile
.Eu tenho o mesmo problema. Simplesmente reiniciei meu terminal.
fonte
Meu problema foi que eu tinha o aplicativo Mac GitHub instalado.
/usr/local/bin/git
estava apontando para a versão do git do aplicativo, não para a versão Homebrew. A desinstalação do aplicativo GitHub corrigiu o problema para mim.fonte
Ao usar o homebrew para atualizar o git em sua máquina, siga as seguintes etapas:
brew doctor
Corrija os problemas sugeridos
brew update
se houver uma versão mais recente do homebrew disponívelbrew install git
baixar e instalar a versão mais recente do gitcorrer
brew doctor
vai deixar você saber queexecutar
brew link git
resultará no errobrew link --overwrite git
para substituir o link simbólico e apontar para o git brew instalado.fonte
Abra o seu terminal. Digite este comando.
sudo nano /etc/paths
Em seguida, copie o seguinte caminho na parte superior do arquivo.
/usr/local/git/bin
Pressione control + X e salve.
Verifica
git --version
Funciona para mim.
fonte
git/bin
. Você quer dizerbin/git
? Além disso, não há necessidade de adicionar isso aos seus caminhos -/usr/local/bin
já está lá.