【问题标题】:Preventing brew cleanup from deleting specific old version of software [closed]防止 brew cleanup 删除特定的旧版本软件[关闭]
【发布时间】:2018-05-18 12:27:42
【问题描述】:

我是 Homebrew 的忠实粉丝,并且已经开始使用它来管理我的所有应用程序。一个非常有用的功能是brew switch,它可以在不同版本的 Ansible 之间切换。我需要编译一些运行旧软件的网站。

但是,我注意到,每当我希望运行 brew cleanup 时,它会删除所有旧版本,甚至是 Ansible 的 2.3.2.0 版本,我仍然需要它与最新版本一起使用。

在筛选了众多论坛和网站后,我一直无法找到一种解决方案,该解决方案允许我在使用 brew cleanup 命令时保留这个旧版本的 Ansible 和最新版本,而不是手动删除所有内容。

有没有人有解决方法或解决方案,我认为brew pin 可能是一种可能性,但这似乎只适用于当前链接的版本。

【问题讨论】:

  • 这是一个有效的问题。 Homebrew 安装和更新软件的多个版本。例如 foo 2.0、foo 3.0、foo 4.0。有时我们想要 foo 4.0 及更高版本,但也总是保留 foo 2.0。审稿人可能不熟悉 Homebrew/Linuxbrew。请迁移到 apple.stackexchange.com ?

标签: version-control terminal ansible homebrew


【解决方案1】:

我没有看到brew cleanup 的干净内置方式来执行此操作,但有一种解决方法:由于brew cleanup 可以选择使用公式列表进行清理,我们可以制作这样一个列表,其中包含除Ansible。

这就是我获得该列表的方式:

brew list | grep -v ansible

这就是我可以调用 cleanup 忽略 Ansible 的方式:

brew cleanup $(brew list | grep -v ansible)

也许我想在某处将其作为别名,例如 bca 表示“brew cleanup (but not) ansible” :

alias bca='brew cleanup $(brew list | grep -v ansible)'

并将该行添加到我的~/.bashrc

【讨论】:

    猜你喜欢
    • 2017-07-03
    • 1970-01-01
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多