docs: 添加 Git 自动提交规范
任务详情: - 在 CLAUDE.md 中添加了 Git 提交规范章节 - 定义了每次任务完成后的自动提交流程 - 规范了提交信息格式(包含任务类型、描述和详细说明) - 提供了自动化脚本示例 - 修改文件: CLAUDE.md - 新增文件: .claude/, .mcp.json - 影响功能: 项目文档和开发流程规范
This commit is contained in:
161
CLAUDE.md
Normal file
161
CLAUDE.md
Normal file
@@ -0,0 +1,161 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
|
||||
## 项目概述
|
||||
|
||||
这是一个 n8n 工作流自动化平台的演示项目。n8n 源代码位于 `n8n-n8n-1.109.2/` 目录下。
|
||||
|
||||
## 常用命令
|
||||
|
||||
### 开发环境设置
|
||||
```bash
|
||||
cd n8n-n8n-1.109.2
|
||||
pnpm install # 安装依赖
|
||||
```
|
||||
|
||||
### 构建项目
|
||||
```bash
|
||||
cd n8n-n8n-1.109.2
|
||||
pnpm build > build.log 2>&1 # 构建所有包并重定向输出到日志文件
|
||||
tail -n 20 build.log # 查看构建日志的最后几行
|
||||
```
|
||||
|
||||
### 运行 n8n
|
||||
```bash
|
||||
cd n8n-n8n-1.109.2
|
||||
pnpm start # 启动 n8n 服务器
|
||||
# 或使用 npx
|
||||
npx n8n
|
||||
# 或使用 Docker
|
||||
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
|
||||
```
|
||||
|
||||
### 测试
|
||||
```bash
|
||||
cd n8n-n8n-1.109.2
|
||||
pnpm test # 运行所有测试
|
||||
pnpm test:affected # 运行受影响的测试
|
||||
pnpm dev:e2e # 开发模式下的 E2E 测试
|
||||
```
|
||||
|
||||
### 代码质量检查
|
||||
```bash
|
||||
cd n8n-n8n-1.109.2
|
||||
pnpm lint # 代码检查
|
||||
pnpm typecheck # 类型检查
|
||||
pnpm format # 格式化代码
|
||||
```
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
.
|
||||
├── n8n-n8n-1.109.2/ # n8n 源代码目录
|
||||
│ ├── packages/ # monorepo 包结构
|
||||
│ │ ├── cli/ # CLI 和后端服务器
|
||||
│ │ ├── core/ # 工作流执行引擎
|
||||
│ │ ├── editor-ui/ # Vue 3 前端应用
|
||||
│ │ ├── nodes-base/ # 内置节点集成
|
||||
│ │ ├── workflow/ # 核心工作流接口
|
||||
│ │ └── @n8n/ # 共享包
|
||||
│ ├── docker/ # Docker 相关配置
|
||||
│ └── cypress/ # E2E 测试
|
||||
├── .git/ # Git 仓库
|
||||
└── .vscode/ # VSCode 配置
|
||||
```
|
||||
|
||||
## 技术栈
|
||||
|
||||
- **后端**: Node.js + TypeScript + Express + TypeORM
|
||||
- **前端**: Vue 3 + TypeScript + Vite + Pinia
|
||||
- **包管理**: pnpm workspaces + Turbo
|
||||
- **测试**: Jest (单元测试) + Playwright (E2E)
|
||||
- **数据库**: SQLite/PostgreSQL/MySQL (通过 TypeORM)
|
||||
|
||||
## 开发注意事项
|
||||
|
||||
1. **始终使用 pnpm** 而不是 npm 或 yarn
|
||||
2. **在 n8n-n8n-1.109.2 目录下执行命令**
|
||||
3. **运行测试前先进入对应的包目录**
|
||||
4. **提交代码前运行 lint 和 typecheck**
|
||||
5. **构建命令输出重定向到日志文件以便查看错误**
|
||||
|
||||
## Git 提交规范
|
||||
|
||||
### 自动提交要求
|
||||
**重要**: 每次完成任务后,必须自动执行 Git 提交到 `My_N8N` 分支。
|
||||
|
||||
#### 提交流程
|
||||
1. **确保在正确分支**
|
||||
```bash
|
||||
git checkout My_N8N
|
||||
```
|
||||
|
||||
2. **添加所有更改**
|
||||
```bash
|
||||
git add .
|
||||
```
|
||||
|
||||
3. **提交更改**(使用规范化的提交信息)
|
||||
```bash
|
||||
git commit -m "[任务类型]: 任务描述
|
||||
|
||||
详细说明:
|
||||
- 完成的具体工作内容
|
||||
- 修改的文件列表
|
||||
- 影响的功能模块"
|
||||
```
|
||||
|
||||
#### 提交信息格式
|
||||
提交信息必须包含以下要素:
|
||||
- **任务类型**: `feat`(新功能)、`fix`(修复)、`docs`(文档)、`style`(格式)、`refactor`(重构)、`test`(测试)、`chore`(杂项)
|
||||
- **任务描述**: 简洁明了的任务概述(50字符以内)
|
||||
- **详细说明**: 具体完成的工作内容
|
||||
|
||||
#### 示例提交信息
|
||||
```bash
|
||||
git commit -m "feat: 添加用户认证模块
|
||||
|
||||
详细说明:
|
||||
- 实现了登录/注册功能
|
||||
- 添加了JWT令牌验证
|
||||
- 修改文件: auth.controller.ts, auth.service.ts
|
||||
- 影响模块: 用户认证系统"
|
||||
```
|
||||
|
||||
### 自动化脚本
|
||||
每次任务完成后,执行以下命令序列:
|
||||
```bash
|
||||
# 切换到项目根目录
|
||||
cd /Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示
|
||||
|
||||
# 确保在正确的分支
|
||||
git checkout My_N8N
|
||||
|
||||
# 查看当前状态
|
||||
git status
|
||||
|
||||
# 添加所有更改
|
||||
git add .
|
||||
|
||||
# 提交更改(根据实际任务内容修改提交信息)
|
||||
git commit -m "[任务类型]: [任务描述]
|
||||
|
||||
任务详情:
|
||||
- [具体完成的工作]
|
||||
- [修改的文件]
|
||||
- [影响的功能]"
|
||||
|
||||
# 查看提交历史
|
||||
git log --oneline -5
|
||||
```
|
||||
|
||||
## n8n 特定指南
|
||||
|
||||
参考 `n8n-n8n-1.109.2/CLAUDE.md` 获取更详细的 n8n 开发指南,包括:
|
||||
- TypeScript 最佳实践
|
||||
- 错误处理规范
|
||||
- 前端开发约定
|
||||
- 测试编写指南
|
||||
- Git 工作流程
|
||||
Reference in New Issue
Block a user