-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
109 lines (85 loc) · 3.26 KB
/
Copy pathMakefile
File metadata and controls
109 lines (85 loc) · 3.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# ============================================
# CoreSRE - 项目管理 Makefile
# ============================================
# 变量定义
BACKEND_DIR = Backend/CoreSRE
FRONTEND_DIR = Frontend
DOTNET = dotnet
NPM = npm
# ============================================
# 🚀 常用命令
# ============================================
.PHONY: help
help: ## 显示所有可用命令
@echo.
@echo CoreSRE Project Commands
@echo ========================
@echo.
@echo install - 安装所有依赖 (前端 + 后端)
@echo dev - 一键启动前后端开发环境
@echo dev-backend - 仅启动后端
@echo dev-frontend - 仅启动前端
@echo build - 构建所有项目
@echo build-backend - 构建后端
@echo build-frontend - 构建前端
@echo clean - 清理所有构建产物
@echo lint - 运行前端 lint
@echo ui-add - 添加 shadcn/ui 组件 (用法: make ui-add c=button)
@echo.
# ============================================
# 📦 依赖安装
# ============================================
.PHONY: install install-backend install-frontend
install: install-backend install-frontend ## 安装所有依赖
install-backend: ## 安装后端依赖 (dotnet restore)
cd $(BACKEND_DIR) && $(DOTNET) restore CoreSRE.slnx
install-frontend: ## 安装前端依赖 (npm install)
cd $(FRONTEND_DIR) && $(NPM) install
# ============================================
# 🔨 构建
# ============================================
.PHONY: build build-backend build-frontend
build: build-backend build-frontend ## 构建所有项目
build-backend: ## 构建后端
cd $(BACKEND_DIR) && $(DOTNET) build CoreSRE.slnx
build-frontend: ## 构建前端
cd $(FRONTEND_DIR) && $(NPM) run build
# ============================================
# 🏃 开发服务器
# ============================================
.PHONY: dev dev-backend dev-frontend
dev: ## 一键启动前后端(并行)- Windows 请用 powershell -File dev.ps1
powershell -ExecutionPolicy Bypass -File dev.ps1
dev-backend: ## 启动后端开发服务器
cd $(BACKEND_DIR) && $(DOTNET) run
dev-frontend: ## 启动前端开发服务器
cd $(FRONTEND_DIR) && $(NPM) run dev
# ============================================
# 🧹 清理
# ============================================
.PHONY: clean clean-backend clean-frontend
clean: clean-backend clean-frontend ## 清理所有构建产物
clean-backend: ## 清理后端构建产物
cd $(BACKEND_DIR) && $(DOTNET) clean CoreSRE.slnx
clean-frontend: ## 清理前端构建产物
cd $(FRONTEND_DIR) && if exist node_modules rmdir /s /q node_modules
cd $(FRONTEND_DIR) && if exist dist rmdir /s /q dist
# ============================================
# 🔧 工具命令
# ============================================
.PHONY: lint ui-add
lint: ## 运行前端 ESLint
cd $(FRONTEND_DIR) && $(NPM) run lint
ui-add: ## 添加 shadcn/ui 组件 (用法: make ui-add c=button)
cd $(FRONTEND_DIR) && npx shadcn@latest add $(c) -y
# ============================================
# 📊 信息
# ============================================
.PHONY: info
info: ## 显示项目环境信息
@echo --- .NET ---
$(DOTNET) --version
@echo --- Node ---
node --version
@echo --- NPM ---
$(NPM) --version