direnv 是一个基于golang 编写的强大的环境变量管理工具,可以帮助我们简化环境变量管理,而且
支持的平台比较多。
基本使用
- 下载二进制软件包
https://github.com/direnv/direnv/releases
- 配置以及集成bash| shell
结合实际,我使用的是zsh
添加path 配置
eval "$(direnv hook bash)"
or
eval "$(direnv hook zsh)"
- 试用
$ cd ~/my_project
$ echo ${FOO-nope}
nope
$ echo export FOO=foo > .envrc
.envrc is not allowed
$ direnv allow .
direnv: reloading
direnv: loading .envrc
direnv export: +FOO
$ echo ${FOO-nope}
foo
$ cd ..
direnv: unloading
direnv export: ~PATH
$ echo ${FOO-nope}
nope
说明
direnv 功能很强大,对于我们开发中环境变量的处理很方便,可以作为持续集成中的一个工具