# 定义变量 BINARY_NAME=main DOCKER_IMAGE_NAME=niumall-go-backend # 默认目标 .PHONY: help help: ## 显示帮助信息 @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' .PHONY: build build: ## 构建Go应用 go build -o ${BINARY_NAME} . .PHONY: run run: ## 运行Go应用 go run main.go .PHONY: test test: ## 运行单元测试 go test -v ./... .PHONY: clean clean: ## 清理构建文件 rm -f ${BINARY_NAME} .PHONY: docker-build docker-build: ## 构建Docker镜像 docker build -t ${DOCKER_IMAGE_NAME} . .PHONY: docker-run docker-run: ## 运行Docker容器 docker run -p 8080:8080 ${DOCKER_IMAGE_NAME} .PHONY: docker-compose-up docker-compose-up: ## 使用docker-compose启动服务 docker-compose up -d .PHONY: docker-compose-down docker-compose-down: ## 使用docker-compose停止服务 docker-compose down .PHONY: migrate-up migrate-up: ## 运行数据库迁移(如果有的话) @echo "运行数据库迁移..." # 在这里添加数据库迁移命令 .PHONY: migrate-down migrate-down: ## 回滚数据库迁移(如果有的话) @echo "回滚数据库迁移..." # 在这里添加数据库回滚命令