相信許多用 MAC 系統的程式設計師、工程師們都有用 Homebrew 這個超好用的 Open Source 套件管理程式吧?
如果沒有的話,你可以透過以下的指令安裝:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
不過今天不是要來介紹如何使用 Homebrew 的,而是要跟大家分享一下我怎麼解決無法 Update 的問題…
某天我要更新 Homebrew 時…
$ brew update
error: pathspec 'master' did not match any file(s) known to git.
Error: Failure while executing: git checkout -q master
你沒看錯,他莫名其妙的跟我說一堆 git 啥的問題,但我根本沒動過他的安裝路徑下的東西,但不更新有時又會出一堆奇奇怪的問題,只好拜一下 Google 大神。
之後在 Stack Overflow 這個網站裝找到了解法。
只要下這幾條命令,問題就解決啦!
$ cd `brew --prefix`
$ git remote add origin https://github.com/Homebrew/homebrew.git
$ git fetch origin
$ git reset --hard origin/master
$ brew update
Already up-to-date.
從這些指令來看,造成這個問題的原因很有可能是因為當初所安裝的 Homebrew 在抓取資料時發生了一些問題,導致 Git 的版本指標位置與伺服器上的發生衝突,而這個衝突會使得 Homebrew 在做更新時被 Git 給擋了下來,防止產生更多的衝突而造成難以修復的問題。
上述的動作是在重新把 Homebrew 的 Git 版本指標更改為最新以及正常的狀態,如此一來我們才能夠正常的使用 Homebrew 的各種功能,以及,更新。
View Comments
不用这么麻烦,简单的办法是挂个梯子,我用的是天路加速器,看他们官网教程。然后执行ALL_PROXY=socks5://127.0.0.1:1080 brew update -v