È corretto. /usr/local/bino equivalente deve essere aggiunto al tuo PATH, perché è lì che brewinstalla il software. Inoltre, dovrà essere in anticipo rispetto alla directory in cui si trova Git di default.
Prima di effettuare una mossa per correggere il PERCORSO, procedere nel Terminale:
which git
e vedere in quale directory si trova attualmente Git. Questa è la directory che devi battere. Digita anche questo:
echo $SHELL
Spero che tu veda '/ bin / bash', dato che è quello che suppongo tu stia usando. In caso contrario, faccelo sapere.
La cosa più semplice da provare è semplicemente mettere /usr/local/binin primo piano il PERCORSO. Questo è tradizionalmente fatto in un file di configurazione per la shell che viene eseguita quando si avvia un Terminale. Per la shell bash, è ~/.bash_profile(dov'è ~il soprannome per la tua directory home). Vai avanti e crea un file di testo lì se non lo hai già, e aggiungi questa riga:
export PATH=/usr/local/bin:$PATH
(Nota: utilizzare qui un editor di testo corretto, come TextWrangler o Xcode o l'editor del programmatore preferito, anziché TextEdit a cui piace salvare i file RTF.)
':' Separa le directory nella variabile PATH e si $PATHespande alla definizione corrente (pre-assegnazione) di questa variabile di ambiente. In breve, questo comando antepone /usr/local/binal PERCORSO, quindi esporta il PERCORSO aggiornato nel proprio ambiente, in modo che altri programmi eseguiti dalla shell possano vedere e utilizzare il PERCORSO aggiornato. (Nota: va bene anche /usr/local/bindopo il PERCORSO. Puoi rimuovere la seconda copia e impostare il PERCORSO sul valore completamente documentato, se decidi di voler tenere il /usr/local/binpasso.)
Salvare quel file, uscire da Terminal e riavviarlo. Crea una nuova finestra Terminale e digita:
echo $PATH
Ora dovresti vedere /usr/local/binsul davanti. Esegui git --versione assicurati di vedere la versione che ti aspetti.
Fatto ciò, cosa potrebbe andare storto? Bene, in alcuni casi potresti aver installato qualcosa /usr/local/binche non è così stabile come le tue applicazioni di sistema standard, e quindi potresti non voler che tutto in quella directory abbia la precedenza sul PATH standard. Se questo accade a te, una soluzione comune è quella di creare una nuova directory che abbia solo riferimenti ai programmi specifici che vuoi trovare prima dei programmi standard di sistema nella ricerca:
- creare una nuova directory, ad es
~/bin
- metti questa directory nella parte anteriore di PATH invece di
/usr/local/bin
- nel Terminale, eseguire
ln -s /usr/local/bin/git ~/bin/gitper creare un collegamento simbolico chiamato gitnella nuova directory, che punta a gitquello brewinstallato. (I collegamenti simbolici sono simili alle "scorciatoie" nel mondo di Windows, se hai familiarità con quelli.)
- chiudere e riavviare Terminale e verificare che durante l'esecuzione sia selezionato il programma corretto desiderato
git.
Dovrei anche notare che esiste un modo più avanzato e specifico per Mac per impostare PATH. Implica la creazione / modifica della environment.plistconfigurazione. Per fare questo, prima di tutto scopri il percorso completo (cioè che non coinvolge le definizioni precedenti di $PATH) di cui hai bisogno:
echo $PATH
Successivamente, esegui questo:
defaults write ~/.MacOSX/environment PATH ...
dove ...viene sostituito con qualsiasi percorso si desideri essere predefinito a livello di sistema. Metti la tua directory in primo piano ( /usr/local/bino qualsiasi altra cosa), non dimenticare ':' e copia / incolla il valore echo'd di PATH alla fine. Quindi, per assicurarti che la tua configurazione Mac e la configurazione della shell siano sulla stessa pagina, vai a ~ / .bash_profile e dove hai avuto la export PATHlinea in precedenza , fai invece:
export PATH=`defaults read ~/.MacOSX/environment.plist PATH`
Ecco come ho impostato PATH sul mio Mac.
Perché attraversare tutti questi problemi? Perché, a differenza del PERCORSO definito in ~/.bash_profile, questo valore predefinito può essere visto dalle applicazioni GUI che vengono avviate dal Finder o Spotlight. Tuttavia, per le operazioni Git eseguirai dalla riga di comando, non ne avrai bisogno. Inoltre, a molte applicazioni della GUI che utilizzano Git può essere assegnato il percorso assoluto ( /usr/local/bin/git) al programma Git, qualora fosse necessario eseguirlo. Quindi potresti essere in grado di scappare senza dover saltare attraverso questi due cerchi extra. Ma ora conosci il trucco, nel caso in cui diventasse necessario in seguito.
Happy Git hacking!
/usr/local/bindovrebbe già essere sul loro cammino.