89 lines
1.6 KiB
Markdown
89 lines
1.6 KiB
Markdown
# Company Celebration 项目指南
|
|
|
|
## 项目概述
|
|
|
|
年会庆典系统,包含投票、抽奖、大屏展示等功能。
|
|
|
|
## 技术栈
|
|
|
|
- **前端**: Vue 3 + TypeScript + Vite
|
|
- **后端**: Node.js + Express + Socket.IO
|
|
- **数据库**: MySQL + Redis
|
|
- **部署**: PM2
|
|
|
|
## 项目结构
|
|
|
|
```
|
|
packages/
|
|
├── client-mobile/ # 移动端(投票、扫码登录)
|
|
├── client-screen/ # 大屏端(展示、管理控制台)
|
|
├── server/ # 后端服务
|
|
└── shared/ # 共享类型和常量
|
|
```
|
|
|
|
---
|
|
|
|
## 运维部署流程
|
|
|
|
### 服务器信息
|
|
|
|
- **SSH 别名**: `vote`
|
|
- **项目目录**: `/root/company-celebration`
|
|
- **进程管理**: PM2 (`gala-server`)
|
|
|
|
### 标准部署流程
|
|
|
|
```bash
|
|
# 1. 本地提交并推送
|
|
git add <files>
|
|
git commit -m "commit message"
|
|
git push origin main
|
|
|
|
# 2. SSH 到服务器拉取代码
|
|
ssh vote "cd /root/company-celebration && git pull"
|
|
|
|
# 3. 构建项目
|
|
ssh vote "cd /root/company-celebration && pnpm build"
|
|
|
|
# 4. 重启服务
|
|
ssh vote "pm2 restart all && pm2 status"
|
|
```
|
|
|
|
### 常见问题处理
|
|
|
|
#### 服务器有本地修改冲突
|
|
|
|
```bash
|
|
ssh vote "cd /root/company-celebration && git stash && git pull"
|
|
```
|
|
|
|
#### 构建失败
|
|
|
|
1. 检查 TypeScript 类型错误
|
|
2. 本地修复后重新提交推送
|
|
3. 服务器重新拉取构建
|
|
|
|
#### 查看服务状态
|
|
|
|
```bash
|
|
ssh vote "pm2 status"
|
|
ssh vote "pm2 logs gala-server --lines 50"
|
|
```
|
|
|
|
---
|
|
|
|
## 开发规范
|
|
|
|
### 类型定义
|
|
|
|
- 共享类型定义在 `packages/shared/src/types/`
|
|
- 修改类型后需确保所有引用处同步更新
|
|
|
|
### 提交规范
|
|
|
|
使用 Conventional Commits:
|
|
- `feat`: 新功能
|
|
- `fix`: 修复
|
|
- `chore`: 杂项
|
|
- `refactor`: 重构
|