这是一套用于快速搭建 Go 后端开发环境的自动化工具集,帮助你在新环境中快速建立个人工作流。
- ✅ Go 语言编译器安装和配置
- ✅ Zsh 和 Oh-My-Zsh 配置
- ✅ Docker 和 Docker Compose
- ✅ Git 全局配置
- ✅ 常用 Go 开发工具链
- ✅ 数据库客户端工具
- ✅ Dotfiles 配置文件管理
- ✅ 智能配置扫描和合并
- ✅ 保护隐私信息
- ✅ 自动备份现有配置
workflow/
├── Makefile # 主要的任务管理文件
├── README.md # 本文档
├── QUICKSTART.md # 快速开始指南
├── install.sh # 一键安装脚本
├── .env.example # 配置文件示例
├── scripts/ # 各种安装脚本
│ ├── check-env.sh
│ ├── install-go.sh
│ ├── install-zsh.sh
│ ├── install-docker.sh
│ ├── install-git.sh
│ ├── install-go-tools.sh
│ ├── install-db-clients.sh
│ └── setup-dotfiles.sh
├── dotfiles/ # 配置文件模板
│ ├── .zshrc
│ ├── .gitconfig
│ └── .vimrc
└── docs/ # 文档目录
└── manual-setup.md # 手动安装指南
# 进入项目目录 cd ~/workflow # (可选)复制并编辑配置文件 cp .env.example .env vim .env # 填写你的个人信息(Git 邮箱等) # 运行一键安装脚本 chmod +x install.sh ./install.sh
使用 Makefile 可以选择性地安装特定组件:
# 查看所有可用命令 make help # 安装所有组件 make all # 仅安装 Go make install-go # 仅安装 zsh make install-zsh # 仅安装 Docker make install-docker # 安装常用 Go 工具 make install-go-tools # 安装数据库客户端 make install-db-clients # 应用 dotfiles 配置 make setup-dotfiles # 检查环境 make check
- Ubuntu 20.04+
- Debian 11+
- CentOS/RHEL 8+
- macOS (部分支持)
工具在应用配置文件时会自动:
-
扫描现有配置
- 检测当前的 Git 用户名和邮箱
- 检测现有的 Go 版本和 GOPATH
- 检测 SSH 密钥配置
-
提供多种选项
- 替换:完全替换为新配置(会自动备份)
- 智能合并:应用新配置但保留关键的个人信息
- 跳过:保持现有配置不变
-
自动备份
- 所有修改前都会创建备份
- 备份文件格式:
原文件名.backup.时间戳 - 例如:
.zshrc.backup.20250112_153000
脚本会在运行时交互式地询问以下信息:
- Git 配置
- 用户名
- 邮箱地址
- Go 配置
- Go 版本
- GOPATH 路径
- SSH 配置
- SSH 密钥邮箱
你可以:
- 在运行时手动输入
- 提前在
.env文件中配置 - 使用现有配置(如果已存在)
# 复制配置文件模板 cp .env.example .env # 编辑配置文件 vim .env
.env 文件示例:
GIT_USER_NAME="Your Name" GIT_USER_EMAIL="your.email@example.com" GO_VERSION="1.24.8" GOPATH="$HOME/go-workspace"
gofmt/goimports- 代码格式化golangci-lint- 代码检查工具air- 热重载工具wire- 依赖注入工具swag- Swagger 文档生成migrate- 数据库迁移工具
mysql-client- MySQL 命令行客户端postgresql-client- PostgreSQL 命令行客户端redis-tools- Redis 命令行工具
- Docker & Docker Compose
- Git 配置(用户信息、别名等)
- Vim 基础配置
- Zsh 插件(语法高亮、自动补全等)
你可以根据自己的需求修改以下文件:
scripts/*- 修改安装脚本dotfiles/*- 修改配置文件模板Makefile- 添加或修改任务
- 所有脚本都会检查工具是否已安装,避免重复安装
- 某些工具需要 sudo 权限
- 备份现有配置文件后再应用 dotfiles
如果安装过程中遇到问题,请查看:
docs/manual-setup.md- 手动安装步骤- 各个脚本的日志输出
- 检查网络连接和系统权限
欢迎提交 Issue 和 Pull Request!
MIT License