Git'in homebrew kurulumu sistem sürümüne göre öncelikli olmayacaktır (/ usr / bin / içinde)


10

OS X (veya Xcode) git 1.7.something ile birlikte gelir, ancak brew install git(1.8.0) sonrasında which giteskisini döndürmeye devam eder /usr/bin/git.

Ben şu anda $ PATH yankı zaman ne olsun:

/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin

Homebrew işleri öncelikli olmamalı mı?

Ayrıca, bunun nereden usr/local/git/bingeldiğini bilmiyorum .


Git'in aslında / usr / local / bin içinde olduğunu doğruladınız mı?
Joe Bane

Evet. ls /usr/local/binşovlar gitorada. Brew ayrıca kurulduğunu da doğrular. Hatta git kaldırıcıyı ( brew uninstallresmi git indirme ile birlikte gelen ve kullanarak) koştum ve redid brew install git. Ben almaya devam ediyorum which git = = /usr/bin/git".
o_o_o--

2
Hiç which -a gitbulup bulmadığını görmek için koş .
Joe Bane

Yanıtlar:


7

Anladım. Cevap sorunuzda; demlemek git'e /usr/local/git/bin(değil /usr/local/bin) yükler, ancak yolunuzdan sonra olduğundan /usr/bin, önce bunu alırsınız. İçin yaptığım yorumun which -a gitbu yönde olması gerekirdi.


1
Koş ls -l /usr/local/bin/gitda. Eminim bu sembolik bir bağlantıdır /usr/bin/git.
Joe Bane

Oh, ve /usr/local/git/binresmi yükleyicinin de koyduğu yer gibi görünüyor.
Joe Bane

Sen bakmak gerekir /etc/pathsve /etc/paths.dkuyu olarak.
Joe Bane

1
işte ilginç bir olay: which -a gitgeri dönüşler /usr/local/bin/git; /usr/bin/git; /usr/local/bin/git. Bu yüzden eski git adını değiştirdim usr/bin/git_oldve yoldan çıkardım . Şimdi git --versiondemlemek 1.8, demlemek git başarıyla yükledi kanıtlıyor. - Yine, /usr/bin/gitorijinal ismini yeniden adlandırdım ... ve aniden düzgün çalışıyor! Neden veya nasıl bilmiyorum, ama bir /usr/bin/gitkez git yeniden adlandırmak ve çalıştırmak sorunu çözmüş gibi görünüyor. Sorunun kökeninin ne olduğunu kim bilebilir. Neyse teşekkürler :)
o_o_o--

Bu garip. En azýndan çalýţtýđýn için mutluyum.
Joe Bane

3

Bu sorunla da karşılaştım.

Git'i homebrew üzerinden kurduktan sonra, eğer çalıştırırsanız brew doctor, Joe'nun yukarıda belirtildiği gibi, kurulum konumu önce geldiğinden sistemin eski git'i çalıştırdığı konusunda sizi uyaracaktır.

Ancak, aynı uyarıda, homebrew bunu düzeltmek için kod verir:

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

0

Başlangıçta ~/binkoyduğum bir dizine sahip olmak Unix alışkanlıklarımın bir parçasıydı PATH. Bu, benim ilk bitimden biri .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

Bu durumda, yalnızca Homebrew tarafından yönetilenleri seçerek gitsistem sürümüne ( Homebrew tarafından yönetilen her ikili yerine ) ve yalnızca kabuk oturumlarınıza ( GUI programları da dahil olmak üzere herhangi bir yerden başlayan tüm programlar yerine ) öncelikli olarak yapmak, Symlinking kadar basit:

ln -s /usr/local/bin/git ~/bin/git
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.