多版本控制
- 依赖安装
# 安装 asdf (版本管理)
brew install asdf
# 安装 direnv (目录环境变量管理)
brew install direnv
# 将 direnv 挂载到 zsh (写入 ~/.zshrc)
echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc
source ~/.zshrc- go 版本控制,在项目根目录下面创建
.tool-versions,写入需要的 go 版本
text
golang 1.24.0- go 代理、权限校验,在项目根目录下面创建
.envrc,写入需要的 go 版本
B 站版本
bash
# 自动切换 Go 版本 (配合 asdf 使用)
use asdf
# 基础配置
export GO111MODULE=on
export GOPATH=$HOME/go
# 建议统一,避免污染 asdf 安装目录
# 代理链路:公司内部 > 外部镜像 > 直连
export GOPROXY=http://goproxy.bilibili.co,https://goproxy.cn,direct
# 私有库配置:
# 核心逻辑:把 git.bilibili.co 排除在 GOPRIVATE 之外,
# 这样它就会走公司 GOPROXY,而不是调用你本地没权限的 git。
export GOPRIVATE=buf.bilibili.co,*.internal.co
export GONOPROXY=buf.bilibili.co
export GONOSUMDB=*.bilibili.co私有版本
bash
# 自动切换 Go 版本 (配合 asdf 使用)
use asdf
export GOPATH=$HOME/go
# 代理链路:公共镜像 > 直连
export GOPROXY=https://goproxy.cn,direct
# 清空私有库配置,全部走公共链路
unset GOPRIVATE
unset GONOPROXY
unset GONOSUMDBdirenv allow
