【问题标题】:Ignore formula on brew upgrade忽略 brew 升级的公式
【发布时间】:2012-04-10 17:56:57
【问题描述】:

我想做一个brew upgrade 并告诉自制软件不要升级erlang 公式,因为最新的公式在我的系统上不起作用。

可以做类似homebrew upgrade --skip erlang的事情吗?

【问题讨论】:

标签: homebrew


【解决方案1】:

我终于找到了答案:因为提交85eb73ce,所以有一个pin 子命令可用。所以忽略brew upgrade 上的公式就像通过brew pin <formula> 固定它一样简单。要取消固定,只需调用 brew unpin <formula>

值得注意的是brew upgrade <formula>无论是否置顶,都会更新公式。

警告:此答案对 Homebrew 的最新版本不再有效,因为 brew pin 已被删除。

【讨论】:

  • 如果有一天你问自己你固定了哪些公式:brew list --pinned
  • 呃,如果brew upgrade 仍然会更新公式,那么固定的意义何在...?
  • @SanderW.vanderLaan,如果我理解正确,它会从组中的累积升级中排除固定公式。
  • 这不适用于木桶。有没有类似于brew pin caskName 的替代方案?
  • 查看在 brew pin 作为功能被删除后提出的这个问题的现代版本:apple.stackexchange.com/questions/435901/…
【解决方案2】:

酿造针是要走的路。它将公式固定到当前版本

brew pin <formula>

brew unpin 可以用来重置这个

brew unpin <formula>

查看所有固定公式

brew list --pinned

注意:brew upgrade 不会升级固定公式。

【讨论】:

  • FWIW pin 和 unpin 在当前 Homebrew 版本 3.3.13 中工作。
【解决方案3】:

您可以将 erlang 升级到最新版本,但通过 brew 命令 versionsswitch 继续使用旧的工作版本。

要列出可用版本,请使用:

brew versions erlang

在两个已安装的版本之间切换(我假设你想要 erlang R14):

brew switch erlang R14B04

【讨论】:

    【解决方案4】:

    我遇到了类似的“问题”。我直接在我的系统上安装了 libfreenect(不稳定)。现在我不想让自制软件升级它。我通过删除以下文件解决了它:

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

    类似地,你可以使用/usr/local/Library/Formula/erlang.rb

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-11
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 2018-01-31
      • 1970-01-01
      • 2015-10-06
      相关资源
      最近更新 更多