@Hur1k 在 给uv加上workon:一个用于全局虚拟环境管理的轻量脚本 中发帖
背景
众所周知现在uv作为python的包管理器,使用体验比pip要好太多了,同时uv的venv能非常方便地管理不同项目的py虚拟环境。
然鹅,在我们需要完成某些任务时,需要复用同一套虚拟环境。 例如在使用frida的时候,需要不同的虚拟环境来管理不同的frida版本。翻了很多资料发现uv更多时候是仅支持项目级别的虚拟环境管理的(在项目目录下创建.venv)。
实际上,uv可以创建类似于conda一样带名称的虚拟环境,但是官方似乎并没有提供一个很好的方式来全局管理它们。
在站内翻资料的时候发现已经有人尝试用miniconda结合uv来实现这个功能:uvv,不过单纯下个miniconda来管理感觉还是有点大材小用了。其实有更轻量的办法来实现全局venv的管理。
为了解决这个问题,糊了一个脚本,能让我们在任何地方都能使用同一套虚拟环境。原理也非常简单,相当于起了个别名将uvworkon...