必须先安装 buffalo cli,否则 buffalo new 等命令报 command not found;需 go 1.21+(推荐 1.26.0),确认 go version、gopath 及 $gopath/bin 在 path 中,再用 go install 或预编译包安装,最后新开终端验证 buffalo version。

必须先装 buffalo CLI,否则所有后续命令(如 buffalo new、buffalo dev)都会报 command not found。
确认 Go 环境是否满足最低要求
Buffalo CLI 是用 Go 写的,依赖 Go 的构建系统。它明确要求 Go 1.21+,低于这个版本大概率会失败。
- 运行
go version,输出必须类似go version go1.21.0 darwin/arm64或更高;若显示go1.20.x及以下,请升级到go1.26.0(当前稳定兼容版本),下载地址:https://www.php.cn/link/81836b7cd16991abb7febfd7832927fd - 运行
go env GOPATH,确保返回一个非空路径(如/Users/xxx/go)——这是go install默认把二进制放进去的地方 - 检查
$GOPATH/bin是否已加入系统PATH:在新终端中执行echo $PATH,看输出里有没有那一段;Windows 用户对应检查%USERPROFILE%\go\bin是否在环境变量 PATH 中
用 go install 安装最新版 buffalo
这是最推荐的方式,前提是网络能访问 GitHub 且 Go 版本达标。
Buffalo框架 1.0.1 版本源码包下载,适合需要错误处理改进、依赖更新、render.Download 注释和 request logger 调整的 v1 项目。
- 直接运行:
go install github.com/gobuffalo/cli/cmd/buffalo@latest - 该命令不依赖当前目录是否有
go.mod,也不需要进任何项目;它会拉源码、编译、安装到$GOPATH/bin/buffalo - 如果提示
cannot find module providing package,基本就是 Go 版本太低或 GOPROXY 没配(可临时加export GOPROXY=https://proxy.golang.org,direct再试)
没 Go 环境或网络受限?改用预编译二进制包
适合纯前端开发者、CI 环境、或公司内网无法直连 GitHub 的场景。
- Linux/macOS:去 GitHub Releases 页面 下载对应系统的
buffalo_*.tar.gz(如buffalo_0.18.13_linux_amd64.tar.gz),解压后把buffalo文件复制到/usr/local/bin/,再运行chmod +x /usr/local/bin/buffalo - Windows:推荐用 Scoop(比手动解压配置 PATH 更可靠):
scoop bucket add extras→scoop install buffalo;Scoop 会自动注册 PATH,不用你操心
验证安装并排查常见失败点
这一步不能跳过——90% 的“安装失败”其实是 PATH 没生效。
- 关掉当前终端,新开一个终端窗口(不是新建 tab,是彻底重启 shell),再运行
buffalo version - 成功时输出类似
Buffalo v0.18.13;失败则仍是command not found - 若失败,请逐项检查:
go version是否 ≥1.21 →go env GOPATH是否非空 →$GOPATH/bin是否在PATH中 → 终端是否为全新会话
最容易被忽略的是:PATH 配置只对新启动的终端生效,而且 go install 不会帮你加 PATH——它只管把二进制丢进 $GOPATH/bin,剩下的全靠你自己兜底。










