$ brew update error: Your local changes to the following files would be overwritten by merge: Library/Formula/emacs.rb Please, commit your changes or stash them before you can merge. Aborting Error: Failure while executing: git pull -q origin refs/heads/master:refs/remotes/origin/master
等々、こんなエラーが出た場合は環境がグチャグチャになっています。
上の問題自体は
$ cd /usr/local/ $ git stash
で強引に消す事も可能です。
...が、折角なのでBrew環境の大掃除をしてしまいましょう。
$ brew list > ~/brewlist.log $ rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup $ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)" $ brew update
これで綺麗になります。
あとはBash環境ならば
$ for i in `cat ~/brewlist.log`; do printf $i; done $ . ~/.bashrc
のようにして、再度パッケージを入れ直してあげれば完了です。
ついでに不要になったパッケージをbrewlist.logから捨ててしまうのもアリですね。