Come utilizzare il git installato in Homebrew su Mac?

105

Ho installato la versione più recente di git (1.8.3) usando homebrew ma quando digito

git --version

nel mio terminale, stampa:

git version 1.7.10.2 (Apple Git-33)

Che cosa dovrei fare per sostituire la vecchia versione di git con quella nuova?

    
posta Levani 03.06.2013 - 13:50
fonte

11 risposte

100

Grazie a tutti per le risposte utili. Nel mio caso aggiungendo

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

in ~/.bash_profile seguito da

source ~/.bash_profile

risolto il problema per il mio utente.

    
risposta data 05.06.2013 - 15:25
fonte
43

Ok, sono pronto per fare sul serio su scm.

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

No, non è quello che volevo. I < 3 homebrew, quindi:

$ brew install git

Tutto impostato?

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

Doh! (graffia la testa)

$ which git
/usr/bin/git

Ah, git di Apple è in / usr / bin, quindi supera quello homebrew. Cosa fare?

(A) Basta rinominare il file binario di Apple

(B) Considera che uno gestito da homebrew abbia la precedenza:

[modifica l'esportazione PATH, ad es. in ~ / .zshrc (oh-my-zsh + iTerm2 FTW! / tangente)]

[in particolare: sposta / usr / local / bin / git: prima di / usr / bin:]

... e / o (ad esempio per rendere più largamente accessibili le installazioni di sistema di trump homebrew e avere la precedenza per tutte le shell e gli utenti), modifica anche il file / etc / paths, [spostando / usr / local / bin sopra / usr / bin]

Ma assumendo solo l'approccio più semplice / meno invasivo:

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

Funzionava?

$ which git
/usr/local/bin/git

Fin qui tutto bene, ora il momento della verità:

$ git --version
git version 2.2.1

w00t! :) È ora di leggere il link link ! :)

    
risposta data 10.04.2014 - 00:42
fonte
21

Stato 2018

Tutti i trucchi qui menzionati in diverse risposte non sono più necessari su macOS Sierra con l'ultimo Homebrew. Dimentica export PATH="..." e modifiche a ~/.bash_profile .

Devi semplicemente

brew install git

e hai fatto.

Per confermare, apri una nuova finestra di terminale e digita

git --version
    
risposta data 08.02.2017 - 15:34
fonte
9

Una volta installato l'ultimo git via brew ( brew install git ), esegui questo one-liner (come suggerito da brew doctor ) se non è già lì:

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

Quindi esci da Terminal e riapri (riavvia la sessione di bash). Devi farlo anche se il tuo PATH era già corretto, dato che ZSH e Bash memorizzano nella cache il contenuto di PATH (vedi la documentazione sul comando integrato hash ).

Questo dovrebbe risolvere le cose molto velocemente.

    
risposta data 21.01.2014 - 14:39
fonte
4

Quando digiti

git --version

in Terminal.app o console, il tuo commento su un'altra domanda indica che la versione restituita è git in / usr / bin / git

Se hai installato Xcode 4.5 (e più recente), e scrivi

xcrun git --version

in Terminal.app o console, la versione restituita è il git nel pacchetto di app Xcode.

Se stai usando Homebrew per installare e aggiornare git, la soluzione più semplice è

  1. assicurati di avere i diritti di amministratore quando ti verrà richiesta la password per l'amministratore
  2. rinomina la posizione originale rinominandola con mv. Ad esempio

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

  3. crea un link soft usando 'ln -s' nel binario git che hai installato con Homebrew.

Si noti che MattDMo ha una soluzione migliore nei commenti.

    
risposta data 03.06.2013 - 14:28
fonte
1

Devi rinominare il git originale di apple in /usr/bin/ in e. g. git-org poiché /usr/bin è normalmente prima di /usr/local/bin nella directory del tuo percorso in cui si trova il brew stuff.

cd /usr/bin
sudo mv git git-org

e non dimenticare di collegare il brew git

brew link git

Si presume che /usr/local/bin sia nella variabile di ambiente $PATH . Se hai ancora problemi, prova ad eseguire

brew doctor 

e risolvi i problemi menzionati qui.

    
risposta data 03.06.2013 - 16:09
fonte
1

Installa git con brew, esegui questo.

brew link --force git

Chiudi e riapri il terminale per eseguire which git .

    
risposta data 15.04.2017 - 06:33
fonte
0

Se installi git da git-scm.com direttamente e vorresti usare l'ultimo git scaricato invece di apple (vecchia) versione di git.

  1. Installa git da git-scm.com
  2. Molto probabilmente il nuovo git verrà installato in /usr/local/bin/git
  3. Prova git --version , se restituisce la vecchia versione di git di Apple, quindi procedi sotto
  4. cd ~ (cambia la directory nella tua home directory)
  5. digita vi .bashrc
  6. Utilizza i (per inserire il testo nell'editor vi)
  7. Se trovi una riga con export PATH....... , premi Invio sopra l'esportazione e digita quanto segue: export PATH=/usr/local/:$PATH (Presta estrema attenzione con PATH variabile non rovinarlo altrimenti causerà problemi al tuo sistema operativo ) (si spera che il nuovo git debba essere installato in /usr/local/git )
  8. Premere esc
  9. Inserisci :wq (per salvare il file .bashrc )
  10. Esci dal terminale e avvia il nuovo terminale
  11. Ora prova git --version (dovresti vedere la nuova versione)
risposta data 06.02.2015 - 05:23
fonte
0

Ho provato questo e funziona per me.

brew link --overwrite git
    
risposta data 29.05.2017 - 11:49
fonte
-1

Dipende da dove viene il tuo git. Xcode porta una versione per esempio, forse quella è in anticipo sul tuo percorso.

Forse digitando

which git

mostrerà dove si trova il vecchio.

    
risposta data 03.06.2013 - 14:05
fonte
-2

Per aggiornare qualcosa usando Homebrew su OSX che implica la compilazione usando gcc, assicurati di avere gli strumenti della riga di comando aggiornati da Xcode-sì, lo so, fa schifo dover nascondere uno strumento di sistema nelle preferenze di un'app.

Passi

  1. Vai a Xcode.app - > Preferenze - > Scaricare
  2. Aggiorna (o installa) Strumenti da riga di comando
  3. Esegui brew doctor e correggi tutti gli altri ostacoli
  4. Esegui brew upgrade per aggiornare tutti i pacchetti contemporaneamente
risposta data 03.09.2013 - 17:54
fonte

Leggi altre domande sui tag