brew update failure while executing git checkout

I had a similar problem where from /usr/local (== $(brew --prefix)) I tried the answer by @ Julien Carsique but still got the error:

[local]master$ git checkout 3115d85 hdf5.rb
error: pathspec '3115d85' did not match any file(s) known to git.
error: pathspec 'hdf5.rb' did not match any file(s) known to git.

This was because I the hdf5 routine was in /usr/local/Library/tab/homebrew-science which has it's own git repository. To fix this I entered:

[local]master$ cd Library/Taps/homebrew/homebrew-science/
[homebrew-science]master$ git checkout 3115d85 hdf5.rb

Now I can install a previous version of the desired library (e.g. hdf5)

Hope this helps someone!


when i try it, sudo is needed:

$ git reset --hard origin/master
error: unable to unlink old 'Library/Homebrew/macos/xcode.rb' (Permission denied)
fatal: Could not reset index file to revision 'origin/master'.
$ sudo !!
sudo git reset --hard origin/master
Password:
HEAD is now at 97302bf xrootd 3.2.2

In my case, I had just upgraded to OS X El Capitan and none of the other solutions worked.

I took note of the packages in /usr/local/Cellar and then deleted the Cellar folder and started with a fresh install.

rm -rf /usr/local/Cellar
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )"

Then I brew installed the packages again.


Fixed with the following commands:

$ 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.

Tags:

Homebrew