游乐游手机版
首页/AI热点日报/热点详情

GitHub Actions中缓存友好使用uvx的方法

类型:热点整理2026-07-14
14th July 2026 今天聊一个在 GitHub Actions 里用 uvx 的小技巧——怎样让它既方便又缓存友好。 平时写 workflow 时,经常想临时跑一个 Python 工具,直接敲一句 uvx name-of-tool 确实爽快。但问题来了:每次跑 workflow 都要去 P

14th July 2026

今天聊一个在 GitHub Actions 里用 uvx 的小技巧——怎样让它既方便又缓存友好。

平时写 workflow 时,经常想临时跑一个 Python 工具,直接敲一句 uvx name-of-tool 确实爽快。但问题来了:每次跑 workflow 都要去 PyPI 拉一遍工具和它的依赖,网络请求多不说,时间也白白浪费了。理想的状态是:第一次运行的时候正常下载,后续再跑就直接从 GitHub Actions 缓存里拿,又快又省心。

试了好几种办法,终于找到一个靠谱的配方。关键就两步:

第一,在 workflow 的开头设定一个环境变量 UV_EXCLUDE_NEWER: "2026-07-12"。这个日期你可以按需调整,它的作用是告诉 uvx 只考虑在这个时间点之前发布的版本,后续就不会因为新版本发布而自动更新。

第二,把这个日期作为 GitHub Actions 缓存键的一部分。这样一来,只要日期不变,缓存就能命中,uvx 就不会再发起网络请求。哪天你想升级工具了,只需把日期往后改一改,缓存自然失效,重新拉取最新版本。

说白了,这套方案的核心理念就是:用日期固定工具的版本,用日期控制缓存的刷新。既保留了 uvx 即开即用的便利,又避免了每次运行都去 PyPI 下载一遍的浪费。

来源:https://www.bestblogs.dev/article/54fb5866e7?utm_source=rss&utm_medium=feed&utm_campaign=resources&entry=rss_article_item

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。