02. 环境准备
在开始开发之前,我们需要搭建好开发环境。本节将介绍所有必需工具的安装方法。
环境要求
| 工具 | 版本要求 | 说明 |
|---|---|---|
| Go | >= 1.25 | 后端语言 runtime |
| Node.js | >= 18 | 前端运行时 |
| pnpm | >= 8 | 前端包管理器 |
| PostgreSQL | >= 14 | 关系型数据库 |
| Docker | latest | 容器化平台(可选) |
安装 Go
macOS
# 使用 Homebrew 安装
brew install go
# 验证安装
go version
# 输出: go version go1.25.x darwin/amd64
Windows
- 从 Go 官网 下载 MSI 安装包
- 运行安装程序,按提示完成安装
- 打开命令行验证:
go version
Linux
# 下载安装包
wget https://go.dev/dl/go1.25.x.linux-amd64.tar.gz
# 解压到 /usr/local
sudo tar -C /usr/local -xzf go1.25.x.linux-amd64.tar.gz
# 配置环境变量
export PATH=$PATH:/usr/local/go/bin
安装 Node.js
macOS
# 使用 Homebrew 安装
brew install node
# 验证安装
node --version
pnpm --version
Windows
从 Node.js 官网 下载 LTS 版本安装。
安装 pnpm
pnpm 是一个高效的 Node.js 包管理器,比 npm 更快、更节省磁盘空间。
# 使用 corepack 启用(Node.js 16+)
corepack enable
# 或者使用 npm 安装
npm install -g pnpm
# 验证安装
pnpm --version
安装 PostgreSQL
macOS
# 使用 Homebrew 安装
brew install postgresql@14
brew services start postgresql@14
# 创建数据库
createdb commit
Docker 方式(推荐)
如果你已经有 Docker,可以使用 Docker 快速启动 PostgreSQL:
docker run -d \
--name postgres-commit \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=commit \
-p 5432:5432 \
postgres:14
验证 PostgreSQL
# 连接到数据库
psql -U postgres -d commit
# 退出 \q
安装 Docker(可选)
Docker 可以让你快速启动整个项目,无需手动配置各个服务。
macOS
下载并安装 Docker Desktop for Mac。
Linux
# 安装 Docker
curl -fsSL https://get.docker.com | sh
# 启动 Docker
sudo systemctl start docker
sudo systemctl enable docker
安装 Task(任务运行器)
项目使用 Taskfile 作为任务运行器,类似 Makefile 但更简单。
macOS / Linux
# 使用 Homebrew
brew install task
# 或使用脚本安装
sh -l "$(curl -sL https://taskfile.dev/install.sh)"
开发工具推荐
VS Code 插件
| 插件 | 说明 |
|---|---|
| Go | Go 语言支持 |
| ESLint | JavaScript/TypeScript 检查 |
| Prettier | 代码格式化 |
| Tailwind CSS IntelliSense | Tailwind 代码补全 |
环境验证
安装完成后,运行以下命令验证环境:
# 验证所有工具
go version # Go 版本
node --version # Node.js 版本
pnpm --version # pnpm 版本
task --version # Task 版本
docker --version # Docker 版本
psql --version # PostgreSQL 版本
克隆项目
# 克隆项目
git clone https://github.com/your-repo/commit-dashboard.git
cd commit-dashboard
接下来
环境准备完成!下一节我们将学习本项目的核心概念,包括 Gitea API、RESTful 设计等。