Como usar o git instalado pelo Homebrew no Mac?

Eu instalei a versão mais recente do git (1.8.3) usando homebrew, mas quando digito

git --version 

no meu terminal, ele imprime:

git version 1.7.10.2 (Apple Git-33) 

O que devo fazer para substituir a versão antiga do git pela nova?

Comentários

  • Você tem algumas respostas boas – então eu queria comentar a pergunta. Você está procurando instruções explícitas para instalar o git da fonte do homebrew ou um cliente GUI ou apenas a confirmação de que o OS X agrupa várias versões do git com o sistema operacional principal? opensource.apple.com/source/Git (FWIW – O git mais recente Eu ‘ vi o pacote da Apple até agora é 1.7.12.4 que vem do Git-37)

Resposta

Obrigado a todos pelas respostas úteis. No meu caso adicionando

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

em ~/.bash_profile seguido por

source ~/.bash_profile 

resolveu o problema para meu usuário.

Comentários

  • Se quiser que a mudança seja persistente entre os usuários, você pode mover /usr/local/bin acima /usr/bin em /etc/paths.
  • Esta é a solução proposta pelo próprio Homebrew ao executar brew doctor para diagnosticar o problema
  • esta resposta deve ser atualizada com a solução proposta pelo KevinT de definição de /etc/paths. Definir apenas ” export ” pode não ser suficiente, se /usr/bin tiver ” precedência ” sobre /usr/local/bin (da cerveja) …
  • Lembre-se para reiniciar o terminal! Não ‘ não me ocorreu até que vi Juan Diego Gonzales ‘ o comentário abaixo
  • @Souleiman: Restarting isn ‘ t necessário. source ~/.bash_profile irá reler isso. Reiniciar provavelmente é mais rápido / fácil. 🙂

Resposta

Status 2020

Todos os truques mencionados aqui em várias respostas não são mais necessários no macOS Sierra, Mojave & Catalina com o Homebrew mais recente. Esqueça export PATH="..." e modificações em ~/.bash_profile.

Você simplesmente faz

brew install git 

e pronto.

Para confirmar, abra uma nova janela / guia do terminal e digite

git --version 

Não se esqueça de abrir uma nova janela. Terminais que estavam abertos antes de você começar a install não herdarão nenhuma alteração.

Resposta

Ok, estou pronto para levar scm a sério.

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

Não, não era isso que eu queria. Eu < 3 homebrews, então:

$ brew install git 

Tudo pronto?

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

Doh! (coça a cabeça)

$ which git /usr/bin/git 

Ah, o git da Apple está em / usr / bin, então supera o homebrew. O que fazer?

(A) Apenas renomeie o binário da Apple

(B) Deixe um gerenciado por homebrew ter precedência:

[editar exportação de PATH, por exemplo em ~ / .zshrc (oh-my-zsh + iTerm2 FTW! / tangent)]

[especificamente: move / usr / local / bin / git: before / usr / bin:]

… e / ou (por exemplo, para deixar mais amplamente o material do homebrew superar as instalações do sistema, e ter a precedência aplicada a todos os shells e usuários) também editar o arquivo / etc / path, [movendo / usr / local / bin acima / usr / bin]

Mas assumindo apenas a abordagem mais simples / menos invasiva:

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

Funcionou?

$ which git /usr/local/bin/git 

Até aqui tudo bem, agora é a hora da verdade:

$ git --version git version 2.2.1 

w00t! 🙂 É hora de ler http://git-scm.com ! 🙂

Comentários

  • PS Referente a comentários sobre os riscos de editar / usr / bin: IMHO it ‘ s NBD. (Embora eu goste do Global nomad ‘ s sugestões para fazer ” sudo ln -s / usr / local / bin / git / usr / bin / git ” … que garante que qualquer coisa que chame ” / usr / bin / git ” explicitamente obterá o seu gerenciado por fermentação. Mas, na minha opinião, instalar o git implica que você ‘ retomará a propriedade do git em seu sistema. , versão alternativa do git, pode ser perdida. Recomendo manter as versões do git atualizadas (por segurança, não apenas recursos) e gerenciá-las você mesmo. O Homebrew torna isso fácil. /$0.02
  • Isso não ‘ t funcionar para mim, para desfazê-lo, basta fazer: sudo mv / usr / bin / git-apple / usr / bin / git. Juan Diego Gonzales funcionou. (basicamente, siga a resposta aceita e reinicie o terminal).
  • Mesmo com which git apontando para /usr/local/bin/git, isso não ‘ t trabalhar para mim. Para resolver isso, tive que desinstalar o aplicativo GitHub para 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
  • Basta usar brew doctor. Em 2020, recomendou brew link —overwrite git

Resposta

Assim que você “instalamos o git mais recente via brew (brew install git), execute este one-liner (conforme sugerido por brew doctor) se não for já está lá:

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

Então saia do Terminal e abra-o novamente (reinicie sua sessão bash). Você precisa fazer isso mesmo se seu PATH já estiver correto, pois ZSH e Bash armazenam em cache o conteúdo de PATH (consulte a documentação sobre o comando embutido hash).

Isso deve consertar as coisas muito rápido.

Comentários

  • Como isso difere da resposta aceita?
  • Em No meu caso, eu não ‘ não sabia que precisava reiniciar o Terminal, então essa parte pode ajudar algumas pessoas. É mais rápido do que o aceito por causa de um forro. Se ‘ for uma competição, acho que minha resposta está errada. Caso contrário, acho que contribui. (Diga-me se você deseja que eu faça uma edição ao invés desta).
  • Você faz isso quando instala o Homebrew
  • Achei esta resposta útil. Reiniciar o terminal não é um problema óbvio para muitas pessoas não familiarizadas com o funcionamento do .bash_profile, e um lembrete gentil para o restante de nós.
  • @JuanDiegoGonzales Excelente observação! Eu estava me perguntando exatamente a mesma coisa depois que instalei o git e não ‘ não sabia por quê. Depois da dica de cache , fiz mais pesquisas: unix.stackexchange.com/q/5609/52921

Resposta

Tentei e funciona para mim.

brew link --overwrite git 

Comentários

  • Trabalhou para mim no Mojave (10.14.4)

Resposta

Quando você digita

git --version 

no Terminal.app ou console, seu comentário em outra pergunta indica a versão dela retorna é o git em / usr / bin / git

Se você instalou o Xcode 4.5 (e mais recente) e digite

xcrun git --version 

em Terminal.app ou console, a versão que ele retorna é o git no pacote de aplicativos Xcode.

Se você estiver usando o Homebrew para instalar e atualizar o git, a solução mais simples é

  1. certifique-se de ter direitos de administrador, pois “será solicitada a senha do administrador
  2. renomeie o local original renomeando-o usando mv. Por exemplo

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

  3. crie um soft link usando “ln -s” para o binário git que você instalou com o Homebrew .

Observe que MattDMo tem uma solução melhor nos comentários.

Comentários

  • Isso é 100% seguro? Irá quebrar qualquer coisa relacionada ao Mac?
  • Se você seguir as etapas descritas, a solução ‘ não quebrará qualquer coisa pré-instalada, pois os executáveis git não são excluídos. É por isso que na etapa 2 você deve renomear seu / usr / bin / git original para, por exemplo, como /usr/bin/git.BACKUP
  • Por favor, ‘ não faça isso – você realmente não deve ‘ t estar brincando com /usr/bin, pois ‘ é possível que outros programas que você não ‘ nem sei sobre depender de caprichos associados a uma versão particular. A solução mais fácil, sem mover nada, é adicionar /usr/local/bin à sua $PATH variável de ambiente antes de /usr/bin – IIRC, homebrew instala em /usr/local/bin
  • Obrigado @MattDMo, essa parece ser a melhor abordagem neste caso.

Resposta

Instale o git com brew e execute-o.

brew link --force git

Feche e reabra o terminal para executar which git.

Comentários

  • Como isso muda o caminho padrão?
  • Funcionou para substituir xcode ‘ s git.
  • Recebi um erro durante a execução isso, mas brew link --overwrite git funcionou

Resposta

Você precisa renomear o git original da apple em /usr/bin/ a e. g. git-org, uma vez que /usr/bin está normalmente antes de /usr/local/bin em seu diretório de caminho onde está o material fermentado.

Então:

cd /usr/bin sudo mv git git-org 

e não se esqueça de vincular o git brew

brew link git 

Isso assume que /usr/local/bin está em sua $PATH variável de ambiente.Se você ainda tiver problemas, tente executar

brew doctor 

e corrija os problemas mencionados lá.

Comentários

  • Não renomeie ou altere coisas em / usr / bin, pois isso poderia quebrar o thigs da Apple e eles serão alterados quando você fizer uma atualização de sistema ou XCode. use o caminho para o qual ele foi projetado,
  • @Mark, você tem um ponto. Mas não acredito que você terá problemas se alterar apenas git em / usr / bin. Para mim, está funcionando há vários meses.
  • Eu concordaria que alterar coisas normalmente em / usr / bin é uma má notícia, mas não consigo ‘ não lembrar do SO X está usando git, então o dano pode ser minúsculo e estar relacionado apenas a um sistema ” limpo ” que corresponda aos recibos. O problema seria que uma atualização para o OS X poderia substituir o novo git por uma versão mais antiga, daí a prática normal de localizar um novo binário fora do local do caminho do sistema.
  • Acho que seria muito mais fácil adicionar /usr/local/bin (homebrew ‘ s diretório de instalação, IIRC) para o $PATH antes de /usr/bin em vez de mexer em renomear e fazer backup, etc.

Resposta

Se você estiver instalando o git de git-scm.com diretamente e quiser usar o git baixado mais recente em vez da versão apple (antiga) do git.

  1. Instale o git a partir de git-scm .com
  2. Muito provavelmente o novo git será instalado em /usr/local/bin/git
  3. Tente git --version, se retornar a versão anterior do git da Apple, prossiga abaixo
  4. cd ~ (altere o diretório para o seu diretório inicial)
  5. digite vi .bashrc
  6. Use i (para inserir texto no editor vi)
  7. Se você encontrar uma linha com export PATH......., pressione Enter no topo da exportação e digite o seguinte: export PATH=/usr/local/:$PATH (Tenha muito cuidado com a variável PATH, não bagunce tudo, pois isso causará problemas para o seu sistema operacional) new git deve ser instalado em /usr/local/git)
  8. Pressione esc
  9. Digite :wq (para salve o .bashrc arquivo)
  10. Saia do terminal e inicie um novo terminal
  11. Agora tente git --version (você deve ver a nova versão)

Resposta

Faça um alias simples para evitar a alteração do caminho:

alias git=/usr/local/bin/git 

Resposta

Eu “tentei muitas coisas, incluindo toda esta postagem” s respostas. Finalmente consegui fazer com que a versão brew “s do git rodasse em vez do Xcode” s simplesmente excluindo a pasta de ferramentas adicionais do Xcode:

sudo rm -rf /Library/Developer/CommandLineTools

Resposta

Ao usar brew install git para a instalação, observe que ele instala git em:

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

Você irá também obterá um erro, que aparece anteriormente no log e provavelmente você o esqueceu:

 ==> 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  

Basta executar:

 brew link --overwrite git  

e você deve se sair bem.

Resposta

Depende de onde seu git vem. O Xcode traz uma versão, por exemplo, talvez isso seja inicial em seu caminho.

Talvez digitar

which git 

mostrará onde está o antigo.

Comentários

  • it ‘ s em /usr/bin/git
  • Isso se parece com duas instalações. Acho que a versão git normal (para download) vai para / usr / local / git / … É ‘ então uma questão de adicioná-lo ao caminho ou remover o outro (ou ambos)

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *