Ignore formula on brew upgrade

2020-05-13 12:47发布

问题:

I want to do a brew upgrade and tell homebrew do not upgrade the erlang formula since the latest one does not work on my system.

Is it possible do do something like homebrew upgrade --skip erlang?

回答1:

I finally found an answer: since commit 85eb73ce there is a pin subcommand available. So ignoring a formula on brew upgrade is as simple as pinning it via brew pin <formula>. To un-pin it, simply invoke brew unpin <formula>.

It is worth noting that brew upgrade <formula> will still update the formula regardless of whether or not it is pinned.



回答2:

brew pin is the way to go. It will pin the formula to the current version

brew pin <formula>

brew unpin can be used to reset this

brew unpin <formula>

To view all pinned formulae

brew list --pinned

Note: brew upgrade will ignore the pinned formulae



回答3:

You could upgrade erlang to the latest version but keep using the older working version with the brew commands versions and switch.

To list available versions use:

brew versions erlang

To switch between two installed versions (I'll presume you wanted erlang R14):

brew switch erlang R14B04


回答4:

i had a similar 'problem'. i installed libfreenect (unstable) directly on my system. and now i dont want homebrew to upgrade it. i solved it by deleting following file:

/usr/local/Library/Formula/libfreenect.rb

analogous it would be /usr/local/Library/Formula/erlang.rb for you



标签: homebrew