8.4 KiB
8.4 KiB
Git 版本管理指南
项目: Funstat MCP Server 当前版本: v1.0.0 最后更新: 2025-10-26
📋 仓库信息
项目路径: /Users/lucas/chat--1003255561049
Git状态: ✅ 已初始化
分支: main
提交数: 1
标签: v1.0.0
🏷️ 版本标签
v1.0.0 - 首次发布 (2025-10-26)
核心功能:
- ✅ 自动翻页搜索 (数据获取+285%)
- ✅ SSE传输模式
- ✅ 8个MCP工具
- ✅ 完整文档
性能指标:
- 翻页速度: 6秒/页
- 数据量: 890条记录
- 自动化率: 100%
提交信息:
feat: 初始提交 - Funstat MCP 服务器 v1.0.0
53 files changed, 11235 insertions(+)
📂 文件结构
已跟踪的重要文件
✅ .gitignore # Git忽略规则
✅ README.md # 项目说明文档
✅ claude-code-mcp-config.json # MCP配置
✅ funstat_mcp/
✅ server.py # MCP服务器(SSE)
✅ search_with_pagination.py # 翻页搜索
✅ search_all_translation.py # 多关键词搜索
✅ test_pagination.py # 翻页测试
✅ requirements.txt # Python依赖
✅ start_sse.sh # SSE启动脚本
✅ 文档/
✅ PAGINATION_SUCCESS_REPORT.md # 翻页功能报告
✅ SSE_CONVERSION_COMPLETE.md # SSE转换文档
✅ AGENTAPI_PROXY_SETUP.md # AgentAPI配置
✅ FUNSTAT_MCP_DEPLOYMENT_REPORT.md # 部署报告
被忽略的文件
❌ *.session # Telegram会话文件
❌ *.session-journal # 会话日志
❌ *.txt # 数据文本文件
❌ *.json (除配置文件外) # 数据JSON文件
❌ __pycache__/ # Python缓存
❌ *.log # 日志文件
❌ .DS_Store # macOS系统文件
🔧 常用Git命令
查看状态
# 查看工作区状态
git status
# 查看提交历史
git log --oneline
# 查看详细提交历史
git log --graph --decorate --all
# 查看所有标签
git tag -l -n9
创建提交
# 添加所有更改
git add .
# 添加特定文件
git add funstat_mcp/server.py
# 提交更改
git commit -m "feat: 添加新功能"
# 使用多行提交信息
git commit -m "$(cat <<'EOF'
feat: 功能标题
详细说明...
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
EOF
)"
版本标签
# 创建带注释的标签
git tag -a v1.1.0 -m "版本 1.1.0 说明"
# 查看标签
git tag -l
# 查看标签详情
git show v1.0.0
# 删除标签
git tag -d v1.0.0
分支管理
# 创建分支
git branch feature/new-feature
# 切换分支
git checkout feature/new-feature
# 创建并切换
git checkout -b feature/new-feature
# 合并分支
git checkout main
git merge feature/new-feature
# 删除分支
git branch -d feature/new-feature
撤销操作
# 撤销工作区更改
git checkout -- file.py
# 撤销暂存
git reset HEAD file.py
# 修改最后一次提交
git commit --amend
# 回退到上一个提交
git reset --soft HEAD^
📝 提交规范
Commit Message 格式
<type>(<scope>): <subject>
<body>
<footer>
Type 类型
| 类型 | 说明 | 示例 |
|---|---|---|
feat |
新功能 | feat: 添加自动翻页功能 |
fix |
Bug修复 | fix: 修复session锁定问题 |
docs |
文档更新 | docs: 更新README |
style |
代码格式 | style: 格式化代码 |
refactor |
重构 | refactor: 优化搜索逻辑 |
perf |
性能优化 | perf: 提升翻页速度 |
test |
测试 | test: 添加翻页测试 |
chore |
构建/工具 | chore: 更新依赖 |
示例
# 功能添加
git commit -m "feat: 添加多关键词搜索功能
- 支持批量搜索多个关键词
- 自动去重
- 导出JSON/TXT格式
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>"
# Bug修复
git commit -m "fix: 修复数据库锁定问题
确保同一时间只有一个进程访问session文件
Fixes #123"
# 文档更新
git commit -m "docs: 完善翻页功能文档
添加使用示例和性能指标"
🌿 分支策略
主要分支
- main - 稳定版本,用于发布
- develop - 开发分支,用于日常开发
功能分支
# 命名规范: feature/<功能名>
git checkout -b feature/pagination
git checkout -b feature/export-excel
git checkout -b feature/web-ui
修复分支
# 命名规范: fix/<问题描述>
git checkout -b fix/session-lock
git checkout -b fix/button-click
发布分支
# 命名规范: release/v<版本号>
git checkout -b release/v1.1.0
📦 版本号规范
采用 语义化版本 (Semantic Versioning):
v<major>.<minor>.<patch>
说明
- major - 主版本号,不兼容的API更改
- minor - 次版本号,向后兼容的功能新增
- patch - 修订号,向后兼容的问题修正
示例
v1.0.0 → v1.0.1 (Bug修复)
v1.0.1 → v1.1.0 (新功能)
v1.1.0 → v2.0.0 (重大更改)
🔄 开发工作流
1. 功能开发
# 1. 创建功能分支
git checkout -b feature/new-search-mode
# 2. 开发并提交
git add .
git commit -m "feat: 添加新搜索模式"
# 3. 测试通过后合并
git checkout main
git merge feature/new-search-mode
# 4. 打标签发布
git tag -a v1.1.0 -m "新增搜索模式"
2. Bug修复
# 1. 创建修复分支
git checkout -b fix/urgent-bug
# 2. 修复并提交
git add .
git commit -m "fix: 修复紧急bug"
# 3. 合并到主分支
git checkout main
git merge fix/urgent-bug
# 4. 打补丁版本
git tag -a v1.0.1 -m "修复bug"
📊 项目统计
当前统计
# 查看代码统计
git ls-files | wc -l # 文件数: 53
git log --oneline | wc -l # 提交数: 1
git tag | wc -l # 标签数: 1
# 查看代码行数
git ls-files | xargs wc -l # 总行数: 11235
贡献者
# 查看贡献者列表
git shortlog -sn
# 当前贡献者:
# Lucas & Claude Code
🚀 最佳实践
✅ DO - 应该做的
- 频繁提交 - 小步快跑,每个功能点提交一次
- 清晰的消息 - 使用规范的commit message
- 功能分支 - 每个功能使用独立分支
- 测试后合并 - 确保测试通过后再合并
- 打标签 - 每次发布都打版本标签
- 写文档 - 重要更改更新文档
❌ DON'T - 不应该做的
- ❌ 不要提交敏感信息(密钥、session文件)
- ❌ 不要提交大文件(数据文件、日志)
- ❌ 不要直接在main分支开发
- ❌ 不要使用无意义的commit message
- ❌ 不要强制推送到main分支
- ❌ 不要忘记更新.gitignore
🔒 安全提醒
敏感文件保护
# 检查是否意外提交了敏感文件
git ls-files | grep -E "\.session|\.env|config_local"
# 如果意外提交,从历史中移除
git filter-branch --force --index-filter \
"git rm --cached --ignore-unmatch *.session" \
--prune-empty --tag-name-filter cat -- --all
.gitignore 检查
# 确认关键文件被忽略
cat .gitignore | grep -E "session|\.env|config_local"
📖 参考资源
Git 学习资源
项目相关文档
- README.md - 项目说明
- PAGINATION_SUCCESS_REPORT.md - 翻页功能
- SSE_CONVERSION_COMPLETE.md - SSE转换
🎯 快速命令参考
# 状态查看
git status # 工作区状态
git log --oneline # 提交历史
git tag -l # 标签列表
# 提交流程
git add . # 暂存所有更改
git commit -m "message" # 提交
git tag -a v1.0.0 -m "msg" # 打标签
# 分支操作
git branch # 查看分支
git checkout -b feature/xxx # 创建并切换分支
git merge feature/xxx # 合并分支
# 查看差异
git diff # 工作区 vs 暂存区
git diff --staged # 暂存区 vs 仓库
git diff HEAD # 工作区 vs 仓库
最后更新: 2025-10-26 Git版本: 2.x 状态: ✅ 版本管理已配置