如何仅更新已安装 Homebrew 软件包的*次要*版本更新?

问题描述 投票:0回答:1

我想过滤

brew upgrade
(默认情况下,将所有安装的软件包升级到最新版本)以仅自动更新“chaff” - 任何出现轻微障碍的软件包,我懒得阅读更改注释或担心。

此功能由 Homebrew 团队提出但遭到拒绝;这里的目标是在 Homebrew 外部编写此脚本,因此不需要上游兴趣。

macos sh homebrew versioning semantic-versioning
1个回答
0
投票
我正在使用这个 shell 脚本来帮我处理它。它需要

jq (brew install jq

) 和 npm 中的 
semver 包。

brew upgrade $( brew outdated --json | \ jq -r '(.formulae[] | [.name, .installed_versions[-1], .current_version]) | join(" ")' | \ while read -r formula current new; do if (npx semver --range '~'$current $new >/dev/null); then >&2 echo "${formula}: $current --> $new"; echo "$formula"; fi done )
如果没有要升级的小软件包,我的解决方案将调用裸

brew upgrade

,这将更新其他所有内容;小心!

© www.soinside.com 2019 - 2024. All rights reserved.