docs: 移除项目文档和配置文件
- 从 .gitignore 中移除 target/ 目录忽略规则 - 添加 backend/target/ 和 frontend 相关目录到忽略列表 - 添加发布包相关文件到忽略列表 - 移除 CLAUDE.md 项目指导文件 - 移除多个 README 和使用说明文档 - 移除 docs 目录下的用户手册、快速开始等文档 - 移除样例报表文件 - 移除 Docker compose 配置文件 - 移除启动脚本文件
This commit is contained in:
+12
-1
@@ -1,5 +1,4 @@
|
||||
# Maven
|
||||
target/
|
||||
pom.xml.tag
|
||||
pom.xml.releaseBackup
|
||||
pom.xml.versionsBackup
|
||||
@@ -9,6 +8,12 @@ dependency-reduced-pom.xml
|
||||
buildNumber.properties
|
||||
.mvn/timing.properties
|
||||
.mvn/wrapper/maven-wrapper.jar
|
||||
backend/target/
|
||||
target/
|
||||
|
||||
# Frontend
|
||||
frontend/node_modules/
|
||||
frontend/dist/
|
||||
|
||||
# IntelliJ IDEA
|
||||
.idea/
|
||||
@@ -40,6 +45,12 @@ md/
|
||||
*.xlsx
|
||||
outputs/
|
||||
|
||||
# Release artifacts
|
||||
release/windows/*.jar
|
||||
release/unix/*.jar
|
||||
release/*.zip
|
||||
release/*.tar.gz
|
||||
|
||||
# OS generated files
|
||||
.DS_Store
|
||||
.DS_Store?
|
||||
|
||||
@@ -1,154 +0,0 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
|
||||
## Project Overview
|
||||
|
||||
SVN Log Tool is a Java-based application that fetches SVN logs, exports them to Markdown, and uses DeepSeek AI to analyze logs and generate Excel workload reports.
|
||||
|
||||
**Tech Stack**: Java 8, Maven, Spring Boot 2.7.18, SVNKit, Apache POI, OkHttp
|
||||
|
||||
**Entry Points**:
|
||||
- CLI: `com.svnlog.Main` - Interactive SVN log fetcher
|
||||
- Web: `com.svnlog.WebApplication` - Web workbench with REST API (port 8080)
|
||||
- AI Processor: `com.svnlog.DeepSeekLogProcessor` - Standalone AI analysis tool
|
||||
|
||||
## Build & Run Commands
|
||||
|
||||
### Build
|
||||
```bash
|
||||
# Compile only (fastest validation)
|
||||
mvn clean compile
|
||||
|
||||
# Package with tests
|
||||
mvn clean package
|
||||
|
||||
# Package without tests
|
||||
mvn clean package -DskipTests
|
||||
```
|
||||
|
||||
### Run
|
||||
```bash
|
||||
# Web workbench (recommended)
|
||||
mvn spring-boot:run -Dspring-boot.run.mainClass=com.svnlog.WebApplication
|
||||
# Access at http://localhost:8080
|
||||
|
||||
# CLI tool
|
||||
java -jar target/svn-log-tool-1.0.0-jar-with-dependencies.jar
|
||||
|
||||
# AI processor
|
||||
java -cp target/svn-log-tool-1.0.0-jar-with-dependencies.jar com.svnlog.DeepSeekLogProcessor
|
||||
```
|
||||
|
||||
### Test
|
||||
```bash
|
||||
# Run all tests
|
||||
mvn test
|
||||
|
||||
# Run single test class
|
||||
mvn -Dtest=ClassName test
|
||||
|
||||
# Run single test method
|
||||
mvn -Dtest=ClassName#methodName test
|
||||
```
|
||||
|
||||
## Architecture
|
||||
|
||||
### Core Components
|
||||
|
||||
**SVN Layer** (`com.svnlog`):
|
||||
- `SVNLogFetcher` - SVN connection, log fetching, user filtering
|
||||
- `LogEntry` - Log data model
|
||||
- `Main` - CLI interaction and Markdown generation
|
||||
|
||||
**AI Layer** (`com.svnlog`):
|
||||
- `DeepSeekLogProcessor` - Calls DeepSeek API, generates Excel workload reports
|
||||
|
||||
**Web Layer** (`com.svnlog.web`):
|
||||
- `controller/AppController` - REST API endpoints
|
||||
- `controller/GlobalExceptionHandler` - Centralized error handling
|
||||
- `service/TaskService` - Async task orchestration
|
||||
- `service/SvnWorkflowService` - SVN fetch workflow
|
||||
- `service/AiWorkflowService` - AI analysis workflow
|
||||
- `service/TaskPersistenceService` - Task history persistence
|
||||
- `service/HealthService` - System health checks
|
||||
- `service/SettingsService` - API key and output directory management
|
||||
- `service/SvnPresetService` - Preset SVN projects
|
||||
- `service/OutputFileService` - File listing and downloads
|
||||
- `service/AiInputValidator` - Input validation (max 20 files, 2MB each)
|
||||
- `service/RetrySupport` - Retry logic for external calls
|
||||
|
||||
**Frontend** (`src/main/resources/static`):
|
||||
- `index.html` - Main web interface
|
||||
- `app.js` - Frontend logic
|
||||
- `styles.css` - Styling
|
||||
|
||||
### Data Flow
|
||||
|
||||
1. **SVN Fetch**: User input → `SVNLogFetcher` → Markdown file (`outputs/md/*.md`)
|
||||
2. **AI Analysis**: Markdown → `DeepSeekLogProcessor` → Excel file (`outputs/excel/*.xlsx`)
|
||||
3. **Web Mode**: REST API → Async tasks → Task history (`outputs/task-history.json`)
|
||||
|
||||
### Output Directory Structure
|
||||
```
|
||||
outputs/
|
||||
├── md/ # SVN log Markdown files
|
||||
├── excel/ # AI-generated Excel reports
|
||||
└── task-history.json # Task persistence (survives restarts)
|
||||
```
|
||||
|
||||
## Key REST API Endpoints
|
||||
|
||||
- `POST /api/svn/test-connection` - Test SVN connection
|
||||
- `POST /api/svn/fetch` - Async SVN log fetch
|
||||
- `GET /api/svn/presets` - List preset SVN projects
|
||||
- `POST /api/ai/analyze` - Async AI analysis
|
||||
- `GET /api/tasks` - List all tasks
|
||||
- `GET /api/tasks/query?status=&type=&keyword=&page=1&size=10` - Query tasks
|
||||
- `POST /api/tasks/{taskId}/cancel` - Cancel running task
|
||||
- `GET /api/health` - System health status
|
||||
- `GET /api/files` - List output files
|
||||
- `GET /api/files/download?path=...` - Download file
|
||||
- `GET /api/settings` - Get settings
|
||||
- `PUT /api/settings` - Update settings
|
||||
|
||||
## DeepSeek API Configuration
|
||||
|
||||
**API Key Priority** (highest to lowest):
|
||||
1. Request-level `apiKey` parameter
|
||||
2. Runtime settings (via `/api/settings`)
|
||||
3. Environment variable `DEEPSEEK_API_KEY`
|
||||
|
||||
**Security**: Never commit real API keys. Use environment variables in production.
|
||||
|
||||
## Code Style Requirements
|
||||
|
||||
- **Java 8 compatibility**: No Java 9+ APIs
|
||||
- **Imports**: No wildcards, explicit imports only, grouped by: `java.*` / third-party / `com.svnlog.*`
|
||||
- **Formatting**: 4 spaces, max 120 chars/line, always use braces for `if/for/while`
|
||||
- **Naming**: `UpperCamelCase` for classes, `lowerCamelCase` for methods/variables, `UPPER_SNAKE_CASE` for constants
|
||||
- **Resources**: Use try-with-resources for I/O, explicit UTF-8 encoding
|
||||
- **Error handling**: Never swallow exceptions, provide actionable error messages
|
||||
|
||||
## Testing Strategy
|
||||
|
||||
- Test directory: `src/test/java/com/svnlog/`
|
||||
- Naming: `<ClassName>Test`, methods: `should<Behavior>When<Condition>`
|
||||
- Minimal validation: `mvn clean compile` must pass
|
||||
|
||||
## Important Notes
|
||||
|
||||
- **Preset SVN projects** are hardcoded in `Main.java` (lines 14-18)
|
||||
- **Task persistence** enables history recovery after restart
|
||||
- **AI input limits**: Max 20 files, 2MB each, `.md` only
|
||||
- **Async tasks** run in background, tracked via `TaskService`
|
||||
- **Web frontend** is a single-page app with vanilla JS
|
||||
|
||||
## When Modifying Code
|
||||
|
||||
- SVN logic → `SVNLogFetcher`
|
||||
- CLI interaction → `Main`
|
||||
- AI/Excel logic → `DeepSeekLogProcessor`
|
||||
- Web API → `AppController` + services
|
||||
- Always update `docs/` if behavior changes
|
||||
- Run `mvn clean compile` before committing
|
||||
@@ -1,78 +0,0 @@
|
||||
# SVN/Git 日报周报月报一键生成
|
||||
|
||||
本地离线运行的代码仓库报表生成工具,支持 SVN 和 Git 仓库,一键生成日报、周报、月报。当前仓库仅保留 `Spring Boot` 后端与打包链路。
|
||||
|
||||
## 核心能力
|
||||
|
||||
- SVN(远程)+ Git(本地路径)双仓库支持
|
||||
- 日报 / 周报 / 月报自动换算日期区间
|
||||
- Markdown + Excel 双产物导出
|
||||
- DeepSeek AI 摘要增强,可选开启
|
||||
- 异步任务管理、历史查询、文件下载
|
||||
- 单 jar、Docker、源码三种交付方式
|
||||
|
||||
## 项目结构
|
||||
|
||||
```text
|
||||
backend/ Spring Boot API 与打包入口
|
||||
docs/ 用户文档、销售文案、打包说明
|
||||
release/ 发行包模板目录
|
||||
```
|
||||
|
||||
## 开发命令
|
||||
|
||||
### 后端开发
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
mvn clean compile
|
||||
mvn spring-boot:run -Dspring-boot.run.mainClass=com.svnlog.web.WebApplication
|
||||
```
|
||||
|
||||
### 整体构建
|
||||
|
||||
```bash
|
||||
make build
|
||||
```
|
||||
|
||||
或:
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
mvn clean package -DskipTests
|
||||
```
|
||||
|
||||
说明:仓库已移除前端代码,`backend/pom.xml` 现在只负责后端构建与打包。
|
||||
仓库内置 `backend/.mvn/settings.xml`,默认使用国内镜像源完成 `maven` 依赖下载。
|
||||
|
||||
## 运行方式
|
||||
|
||||
### Docker 方式
|
||||
|
||||
```bash
|
||||
make up
|
||||
```
|
||||
|
||||
访问:`http://localhost:18088`
|
||||
|
||||
### 本机运行
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
mvn spring-boot:run -Dspring-boot.run.mainClass=com.svnlog.web.WebApplication
|
||||
```
|
||||
|
||||
## 文档
|
||||
|
||||
- [发行版打包指南](docs/发行版打包指南.md)
|
||||
- [用户手册](docs/用户手册.md)
|
||||
- [快速开始](docs/快速开始.md)
|
||||
- [销售文案](docs/销售文案.md)
|
||||
|
||||
## 技术栈
|
||||
|
||||
- 后端:Java 8、Spring Boot 2.7.18
|
||||
- SVN:SVNKit
|
||||
- Git:JGit
|
||||
- Excel:Apache POI
|
||||
- AI:DeepSeek API、OkHttp、Gson
|
||||
@@ -1,39 +0,0 @@
|
||||
# SVN 日志 AI 分析(Web)
|
||||
|
||||
## 功能说明
|
||||
|
||||
通过 Web 工作台上传/选择 Markdown 日志,调用 DeepSeek API 分析并生成 Excel 工作量统计文件。
|
||||
|
||||
## 启动
|
||||
|
||||
```bash
|
||||
# Docker 一键启动(推荐)
|
||||
make up
|
||||
```
|
||||
|
||||
备用方式(本机 Java + Maven):
|
||||
|
||||
```bash
|
||||
mvn spring-boot:run -Dspring-boot.run.mainClass=com.svnlog.web.WebApplication
|
||||
```
|
||||
|
||||
访问:`http://localhost:18088`
|
||||
|
||||
## 使用步骤
|
||||
|
||||
1. 在「SVN 日志抓取」先生成 `.md` 文件
|
||||
2. 在「系统设置」配置 DeepSeek API Key(或使用环境变量 `DEEPSEEK_API_KEY`)
|
||||
3. 在「AI 工作量分析」选择 `.md` 文件并发起分析
|
||||
4. 在「任务历史」或「产物列表」下载 `.xlsx`
|
||||
|
||||
## API Key 读取优先级
|
||||
|
||||
1. 请求中的 `apiKey`
|
||||
2. 设置页保存的运行时 `apiKey`
|
||||
3. 环境变量 `DEEPSEEK_API_KEY`
|
||||
|
||||
## 注意事项
|
||||
|
||||
- 不要在源码和日志中写入真实密钥
|
||||
- 需要可访问 DeepSeek API 的网络环境
|
||||
- 接口调用可能产生费用,建议控制调用频率
|
||||
@@ -1,16 +0,0 @@
|
||||
# 包结构迁移说明
|
||||
|
||||
## 入口调整
|
||||
|
||||
- 当前只保留 `com.svnlog.web.WebApplication` 作为唯一入口。
|
||||
- 已移除 CLI/AI 独立入口类。
|
||||
|
||||
## 核心类迁移
|
||||
|
||||
- `com.svnlog.SVNLogFetcher` -> `com.svnlog.core.svn.SVNLogFetcher`
|
||||
- `com.svnlog.LogEntry` -> `com.svnlog.core.svn.LogEntry`
|
||||
- `com.svnlog.TrustAllSSLContext` -> `com.svnlog.core.svn.TrustAllSSLContext`
|
||||
|
||||
## 公共能力
|
||||
|
||||
- `com.svnlog.core.report.MarkdownReportWriter`:统一 Markdown 输出逻辑。
|
||||
@@ -1,99 +0,0 @@
|
||||
# SVN 月报
|
||||
|
||||
## 报告信息
|
||||
|
||||
- **仓库**: `ERP-Backend`
|
||||
- **周期**: 2025年05月 月报
|
||||
- **来源**: SVN 远程仓库
|
||||
- **生成时间**: 2025-06-01 09:00:00
|
||||
|
||||
## 统计信息
|
||||
|
||||
- **总提交数**: 45
|
||||
- **涉及文件数**: 128
|
||||
- **活跃作者数**: 4
|
||||
- **作者提交分布**:
|
||||
- `lisi`: 18 次
|
||||
- `wangwu`: 12 次
|
||||
- `zhangsan`: 10 次
|
||||
- `zhaoliu`: 5 次
|
||||
- **涉及模块**:
|
||||
- `src`: 89 个文件
|
||||
- `webapp`: 24 个文件
|
||||
- `config`: 10 个文件
|
||||
- `docs`: 5 个文件
|
||||
|
||||
## 工作摘要
|
||||
|
||||
- 完成采购审批流程模块开发,支持三级审批链路
|
||||
- 库存预警功能上线,支持邮件和站内信双通道通知
|
||||
- 报表导出模块重构,统一使用 Apache POI 模板引擎
|
||||
- 修复财务对账模块金额精度丢失问题(BigDecimal 替换 double)
|
||||
- 前端表单校验增强,新增 15 个字段级校验规则
|
||||
- 数据库慢查询优化 8 处,平均响应时间降低 40%
|
||||
|
||||
## 风险与说明
|
||||
|
||||
- 采购审批流程尚未覆盖退货场景,计划 6 月迭代补充
|
||||
- 库存预警阈值目前为全局配置,后续需支持按品类自定义
|
||||
|
||||
## 提交明细
|
||||
|
||||
### r15230
|
||||
|
||||
**作者**: `lisi`
|
||||
**时间**: 2025-05-30 16:45:00
|
||||
**仓库**: `ERP-Backend`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
feat: 采购审批流程 - 三级审批链路完整实现
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/erp/approval/ApprovalChainService.java`
|
||||
- `src/main/java/com/erp/approval/ApprovalController.java`
|
||||
- `src/main/java/com/erp/model/ApprovalRecord.java`
|
||||
- `webapp/views/approval/list.jsp`
|
||||
|
||||
---
|
||||
|
||||
### r15218
|
||||
|
||||
**作者**: `wangwu`
|
||||
**时间**: 2025-05-28 14:20:00
|
||||
**仓库**: `ERP-Backend`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
feat: 库存预警功能 - 支持邮件和站内信通知
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/erp/inventory/AlertService.java`
|
||||
- `src/main/java/com/erp/notification/EmailSender.java`
|
||||
- `src/main/java/com/erp/notification/InboxSender.java`
|
||||
- `config/alert-rules.xml`
|
||||
|
||||
---
|
||||
|
||||
### r15205
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-25 10:30:00
|
||||
**仓库**: `ERP-Backend`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
fix: 修复财务对账金额精度丢失,double 替换为 BigDecimal
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/erp/finance/ReconciliationService.java`
|
||||
- `src/main/java/com/erp/model/FinanceRecord.java`
|
||||
- `src/test/java/com/erp/finance/ReconciliationServiceTest.java`
|
||||
|
||||
---
|
||||
@@ -1,115 +0,0 @@
|
||||
# Git 周报
|
||||
|
||||
## 报告信息
|
||||
|
||||
- **仓库**: `demo-web-app`
|
||||
- **周期**: 2025-05-19 至 2025-05-25 周报
|
||||
- **来源**: Git 本地仓库
|
||||
- **作者过滤**: `zhangsan`
|
||||
- **生成时间**: 2025-05-25 18:30:00
|
||||
|
||||
## 统计信息
|
||||
|
||||
- **总提交数**: 12
|
||||
- **涉及文件数**: 37
|
||||
- **活跃作者数**: 1
|
||||
- **作者提交分布**:
|
||||
- `zhangsan`: 12 次
|
||||
- **涉及模块**:
|
||||
- `src`: 28 个文件
|
||||
- `docs`: 5 个文件
|
||||
- `config`: 4 个文件
|
||||
|
||||
## 工作摘要
|
||||
|
||||
- 完成用户登录模块重构,统一使用 JWT 认证方案
|
||||
- 优化首页加载性能,接口响应时间从 800ms 降至 200ms
|
||||
- 修复订单列表分页查询在大数据量下的 SQL 慢查询问题
|
||||
- 新增导出功能,支持 CSV 和 Excel 两种格式
|
||||
- 补充单元测试 15 个,覆盖率从 62% 提升至 78%
|
||||
|
||||
## 风险与说明
|
||||
|
||||
- JWT 密钥目前硬编码在配置文件中,后续需迁移至密钥管理服务
|
||||
|
||||
## 提交明细
|
||||
|
||||
### abc1234
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-25 17:20:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
feat: 新增订单导出 Excel 功能
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/demo/service/ExportService.java`
|
||||
- `src/main/java/com/demo/controller/OrderController.java`
|
||||
- `src/test/java/com/demo/service/ExportServiceTest.java`
|
||||
|
||||
---
|
||||
|
||||
### bcd2345
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-24 15:40:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
perf: 优化首页接口查询,添加缓存层
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/demo/service/DashboardService.java`
|
||||
- `src/main/java/com/demo/config/CacheConfig.java`
|
||||
|
||||
---
|
||||
|
||||
### cde3456
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-23 11:15:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
fix: 修复订单分页查询慢查询问题,添加复合索引
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/resources/db/migration/V20250523__add_order_index.sql`
|
||||
- `src/main/java/com/demo/mapper/OrderMapper.java`
|
||||
|
||||
---
|
||||
|
||||
### def4567
|
||||
|
||||
**作者**: `zhangsan`
|
||||
**时间**: 2025-05-22 09:30:00
|
||||
**仓库**: `demo-web-app`
|
||||
**引用**: `develop`
|
||||
|
||||
**提交信息**:
|
||||
|
||||
```
|
||||
refactor: 重构登录模块,统一使用 JWT 认证
|
||||
```
|
||||
|
||||
**变更路径**:
|
||||
- `src/main/java/com/demo/security/JwtTokenProvider.java`
|
||||
- `src/main/java/com/demo/security/JwtAuthFilter.java`
|
||||
- `src/main/java/com/demo/controller/AuthController.java`
|
||||
- `src/main/java/com/demo/config/SecurityConfig.java`
|
||||
- `docs/auth-design.md`
|
||||
|
||||
---
|
||||
@@ -1,78 +0,0 @@
|
||||
# 发行版打包指南
|
||||
|
||||
本文档说明当前纯 `backend/` 结构下的发行版打包方式。
|
||||
|
||||
## 一键打包
|
||||
|
||||
在项目根目录执行:
|
||||
|
||||
```bash
|
||||
make release
|
||||
```
|
||||
|
||||
该命令会自动:
|
||||
|
||||
1. 在 `backend/` 执行 `mvn clean package -DskipTests`
|
||||
2. 生成 `backend/target/svn-log-tool-1.0.0-jar-with-dependencies.jar`
|
||||
3. 将 jar 复制到 `release/windows/` 和 `release/unix/`
|
||||
4. 打包 Windows、Unix、Docker 三类发行包
|
||||
|
||||
## 手动打包步骤
|
||||
|
||||
### 1. 构建后端产物
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
mvn clean package -DskipTests
|
||||
```
|
||||
|
||||
### 2. 复制 jar 到发行目录
|
||||
|
||||
```bash
|
||||
cp backend/target/svn-log-tool-1.0.0-jar-with-dependencies.jar release/windows/
|
||||
cp backend/target/svn-log-tool-1.0.0-jar-with-dependencies.jar release/unix/
|
||||
```
|
||||
|
||||
### 3. 打包 Windows 版本
|
||||
|
||||
```bash
|
||||
cd release/windows
|
||||
zip -r ../svn-log-tool-1.0.0-windows.zip *
|
||||
cd ../..
|
||||
```
|
||||
|
||||
### 4. 打包 Unix 版本
|
||||
|
||||
```bash
|
||||
cd release/unix
|
||||
tar czf ../svn-log-tool-1.0.0-unix.tar.gz *
|
||||
cd ../..
|
||||
```
|
||||
|
||||
### 5. 打包 Docker 版本
|
||||
|
||||
```bash
|
||||
cd release/docker
|
||||
cp ../../Dockerfile .
|
||||
tar czf ../svn-log-tool-1.0.0-docker.tar.gz *
|
||||
rm Dockerfile
|
||||
cd ../..
|
||||
```
|
||||
|
||||
## Docker 构建说明
|
||||
|
||||
根目录 `Dockerfile` 采用多阶段构建:
|
||||
|
||||
1. `maven:3.9.6-eclipse-temurin-8` 打包 `backend/`
|
||||
2. `eclipse-temurin:8-jre` 作为最终运行镜像
|
||||
|
||||
## 发布清单
|
||||
|
||||
- [ ] Windows 发行包(.zip)
|
||||
- [ ] Unix 发行包(.tar.gz)
|
||||
- [ ] Docker 发行包(.tar.gz)
|
||||
- [ ] 用户手册
|
||||
- [ ] 快速开始指南
|
||||
- [ ] 样例报表
|
||||
- [ ] 产品截图
|
||||
- [ ] 演示视频(可选)
|
||||
@@ -1,90 +0,0 @@
|
||||
# 快速开始指南
|
||||
|
||||
3 步快速上手「SVN/Git 日报周报月报一键生成」
|
||||
|
||||
---
|
||||
|
||||
## 方式一:Docker(推荐)
|
||||
|
||||
### 第 1 步:启动服务
|
||||
|
||||
```bash
|
||||
cd release/docker
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### 第 2 步:打开浏览器
|
||||
|
||||
访问:http://localhost:18088
|
||||
|
||||
### 第 3 步:生成报表
|
||||
|
||||
1. 点击左侧「报表生成」
|
||||
2. 选择仓库类型(SVN 或 Git)
|
||||
3. 填写仓库信息
|
||||
4. 选择报表周期(日报/周报/月报)
|
||||
5. 点击「生成 Markdown + Excel」
|
||||
|
||||
完成!报表在 `outputs/` 目录下。
|
||||
|
||||
---
|
||||
|
||||
## 方式二:Windows
|
||||
|
||||
### 第 1 步:安装 Java
|
||||
|
||||
如果尚未安装,访问 https://adoptium.net/ 下载 JRE 8 (LTS)。
|
||||
|
||||
### 第 2 步:启动服务
|
||||
|
||||
双击 `start.bat`
|
||||
|
||||
### 第 3 步:生成报表
|
||||
|
||||
浏览器打开 http://localhost:18088,按照界面提示操作。
|
||||
|
||||
---
|
||||
|
||||
## 方式三:macOS / Linux
|
||||
|
||||
### 第 1 步:启动服务
|
||||
|
||||
```bash
|
||||
cd release/unix
|
||||
./start.sh
|
||||
```
|
||||
|
||||
### 第 2 步:生成报表
|
||||
|
||||
浏览器打开 http://localhost:18088,按照界面提示操作。
|
||||
|
||||
---
|
||||
|
||||
## 示例:生成本周周报
|
||||
|
||||
1. 打开 http://localhost:18088
|
||||
2. 左侧点击「报表生成」
|
||||
3. 选择「Git」仓库类型
|
||||
4. 填写 Git 仓库路径:`/home/user/my-project`
|
||||
5. 报表周期选择「周报」
|
||||
6. 基准日期选择本周任意一天(默认今天)
|
||||
7. 点击「生成 Markdown + Excel」
|
||||
8. 等待完成,自动下载 Excel
|
||||
|
||||
---
|
||||
|
||||
## 可选:配置 AI 分析
|
||||
|
||||
如需 AI 自动生成工作摘要:
|
||||
|
||||
1. 访问 https://platform.deepseek.com 获取 API Key
|
||||
2. 在 Web 工作台 → 系统设置 → 填入 API Key
|
||||
3. 生成报表时勾选「启用 AI 摘要」
|
||||
|
||||
不配置也可正常使用基础功能。
|
||||
|
||||
---
|
||||
|
||||
## 需要帮助?
|
||||
|
||||
查看完整文档:`docs/用户手册.md`
|
||||
-253
@@ -1,253 +0,0 @@
|
||||
# SVN/Git 日报周报月报一键生成 - 用户手册
|
||||
|
||||
## 目录
|
||||
|
||||
1. [产品简介](#1-产品简介)
|
||||
2. [环境要求](#2-环境要求)
|
||||
3. [安装与启动](#3-安装与启动)
|
||||
4. [功能说明](#4-功能说明)
|
||||
5. [AI 工作量分析](#5-ai-工作量分析)
|
||||
6. [常见问题](#6-常见问题)
|
||||
|
||||
---
|
||||
|
||||
## 1. 产品简介
|
||||
|
||||
「SVN/Git 日报周报月报一键生成」是一款本地离线运行的代码仓库报表生成工具。
|
||||
|
||||
**核心能力:**
|
||||
|
||||
- 连接 SVN 远程仓库或 Git 本地仓库,自动抓取提交日志
|
||||
- 支持日报、周报、月报三种统计周期
|
||||
- 自动生成 Markdown 格式提交报表
|
||||
- 可选集成 DeepSeek AI,自动分析工作量并导出 Excel
|
||||
- Web 工作台操作,无需命令行
|
||||
|
||||
**适用场景:**
|
||||
|
||||
- 团队周报/月报编写,快速汇总代码提交记录
|
||||
- 项目经理查看团队成员工作量
|
||||
- 个人开发者整理工作日志
|
||||
- 外包项目交付工作量证明
|
||||
|
||||
**数据安全:**
|
||||
|
||||
- 所有数据本地处理,不上传任何服务器
|
||||
- AI 分析仅发送提交摘要(非源码),且可选关闭
|
||||
|
||||
---
|
||||
|
||||
## 2. 环境要求
|
||||
|
||||
### 方式一:Docker 部署(推荐)
|
||||
|
||||
- Docker 20.10+
|
||||
- Docker Compose v2+
|
||||
- 无需安装 Java
|
||||
|
||||
### 方式二:本机 Java 运行
|
||||
|
||||
- Java 8 或更高版本(JRE 即可)
|
||||
- Windows 7+ / macOS 10.12+ / Linux
|
||||
|
||||
**Java 安装指引:**
|
||||
|
||||
| 系统 | 安装方式 |
|
||||
|------|----------|
|
||||
| Windows | 访问 https://adoptium.net/ 下载 JRE 8 (LTS) |
|
||||
| macOS | `brew install openjdk@8` |
|
||||
| Ubuntu/Debian | `sudo apt install openjdk-8-jre` |
|
||||
| CentOS/RHEL | `sudo yum install java-1.8.0-openjdk` |
|
||||
|
||||
---
|
||||
|
||||
## 3. 安装与启动
|
||||
|
||||
### 3.1 Docker 方式
|
||||
|
||||
```bash
|
||||
# 进入 docker 发行包目录
|
||||
cd release/docker
|
||||
|
||||
# 一键启动
|
||||
docker compose up -d
|
||||
|
||||
# 查看状态
|
||||
docker compose ps
|
||||
|
||||
# 停止服务
|
||||
docker compose down
|
||||
```
|
||||
|
||||
启动后浏览器访问:**http://localhost:18088**
|
||||
|
||||
### 3.2 Windows 方式
|
||||
|
||||
1. 解压发行包到任意目录
|
||||
2. 双击 `start.bat`
|
||||
3. 等待控制台显示启动成功
|
||||
4. 浏览器访问:**http://localhost:18088**
|
||||
|
||||
### 3.3 macOS / Linux 方式
|
||||
|
||||
```bash
|
||||
# 进入 unix 发行包目录
|
||||
cd release/unix
|
||||
|
||||
# 启动
|
||||
./start.sh
|
||||
```
|
||||
|
||||
浏览器访问:**http://localhost:18088**
|
||||
|
||||
---
|
||||
|
||||
## 4. 功能说明
|
||||
|
||||
### 4.1 工作台
|
||||
|
||||
首页展示系统概览:
|
||||
|
||||
- **任务统计**:总任务数、执行中、失败数
|
||||
- **系统状态**:输出目录可写性、API Key 配置状态
|
||||
- **报表模板**:可用的报表模板列表
|
||||
- **最近文件**:最新生成的报表文件,可直接下载
|
||||
|
||||
### 4.2 报表生成
|
||||
|
||||
这是核心功能页面,操作步骤:
|
||||
|
||||
**第一步:选择仓库类型**
|
||||
|
||||
- **SVN**:需要填写 SVN 预设项目、用户名、密码
|
||||
- **Git**:需要填写本地 Git 仓库路径(如 `/home/user/my-project`)
|
||||
|
||||
**第二步:选择报表周期**
|
||||
|
||||
- **日报**:统计指定日期当天的提交
|
||||
- **周报**:统计指定日期所在周(周一至周日)的提交
|
||||
- **月报**:统计指定日期所在月的全部提交
|
||||
|
||||
**第三步:填写参数**
|
||||
|
||||
- **基准日期**:报表统计的参考日期(默认今天)
|
||||
- **周期标签**:报表标题中的周期描述(自动生成,可修改)
|
||||
- **作者过滤**:只统计包含指定关键词的作者(留空不过滤)
|
||||
- **输出名称**:生成文件的名称前缀(自动生成,可修改)
|
||||
|
||||
**第四步:可选 AI 增强**
|
||||
|
||||
- 勾选「启用 AI 摘要」可让 DeepSeek 自动生成工作摘要
|
||||
- 需要先在系统设置中配置 API Key
|
||||
|
||||
**第五步:点击生成**
|
||||
|
||||
- 点击「测试连接」验证仓库可访问
|
||||
- 点击「生成 Markdown + Excel」开始生成
|
||||
- 执行日志区域会实时显示进度
|
||||
- 完成后自动下载 Excel 文件
|
||||
|
||||
### 4.3 任务历史
|
||||
|
||||
查看所有历史任务:
|
||||
|
||||
- 支持按状态(PENDING/RUNNING/SUCCESS/FAILED/CANCELLED)筛选
|
||||
- 支持按类型筛选
|
||||
- 支持关键词搜索
|
||||
- 分页浏览
|
||||
- 可直接下载任务产物
|
||||
|
||||
### 4.4 系统设置
|
||||
|
||||
- **DeepSeek API Key**:配置 AI 分析所需的密钥
|
||||
- **默认 SVN 项目**:设置默认选中的 SVN 预设
|
||||
- **输出目录**:自定义报表输出路径(默认 `outputs`)
|
||||
|
||||
---
|
||||
|
||||
## 5. AI 工作量分析
|
||||
|
||||
### 5.1 获取 API Key
|
||||
|
||||
1. 访问 https://platform.deepseek.com
|
||||
2. 注册账号并登录
|
||||
3. 进入「API Keys」页面
|
||||
4. 创建新的 API Key
|
||||
5. 复制 Key(格式为 `sk-...`)
|
||||
|
||||
### 5.2 配置 API Key
|
||||
|
||||
**方式一:Web 设置页**
|
||||
|
||||
在「系统设置」页面填入 API Key 并保存。
|
||||
|
||||
**方式二:环境变量**
|
||||
|
||||
```bash
|
||||
export DEEPSEEK_API_KEY=sk-your-key-here
|
||||
```
|
||||
|
||||
Docker 方式可在 `docker-compose.yml` 中配置:
|
||||
|
||||
```yaml
|
||||
environment:
|
||||
- DEEPSEEK_API_KEY=sk-your-key-here
|
||||
```
|
||||
|
||||
### 5.3 使用说明
|
||||
|
||||
- AI 分析会将提交记录摘要发送给 DeepSeek API
|
||||
- 不会发送源代码内容,仅发送提交信息
|
||||
- 每次分析消耗少量 Token(通常 < 0.01 元)
|
||||
- 不配置 API Key 也可正常使用基础报表功能
|
||||
|
||||
---
|
||||
|
||||
## 6. 常见问题
|
||||
|
||||
### Q: 启动后无法访问 http://localhost:18088?
|
||||
|
||||
- 确认服务已启动(控制台无报错)
|
||||
- 检查端口 18088 是否被其他程序占用
|
||||
- 尝试使用 http://127.0.0.1:18088
|
||||
|
||||
### Q: SVN 连接失败?
|
||||
|
||||
- 检查 SVN 地址格式是否正确(以 `http://` 或 `https://` 开头)
|
||||
- 确认用户名和密码正确
|
||||
- 确认网络可以访问 SVN 服务器
|
||||
- 如果是 HTTPS,可能存在证书问题
|
||||
|
||||
### Q: Git 仓库路径无效?
|
||||
|
||||
- 确认路径指向 `.git` 所在的目录(不是 `.git` 本身)
|
||||
- 路径必须是本地绝对路径
|
||||
- Docker 模式下需要将 Git 仓库目录挂载到容器中
|
||||
|
||||
### Q: AI 分析报错?
|
||||
|
||||
- 检查 API Key 是否正确
|
||||
- 确认网络可以访问 api.deepseek.com
|
||||
- 检查 DeepSeek 账户余额是否充足
|
||||
|
||||
### Q: 生成的报表在哪里?
|
||||
|
||||
- 默认在程序目录下的 `outputs/` 文件夹
|
||||
- `outputs/md/` 存放 Markdown 报表
|
||||
- `outputs/excel/` 存放 Excel 工作量统计
|
||||
- 也可在 Web 工作台的「任务历史」页面直接下载
|
||||
|
||||
### Q: 如何修改端口?
|
||||
|
||||
在 jar 同目录下创建 `application.properties` 文件:
|
||||
|
||||
```properties
|
||||
server.port=8080
|
||||
```
|
||||
|
||||
Docker 方式修改 `docker-compose.yml` 中的端口映射:
|
||||
|
||||
```yaml
|
||||
ports:
|
||||
- "8080:18088"
|
||||
```
|
||||
@@ -1,96 +0,0 @@
|
||||
# 闲鱼商品文案
|
||||
|
||||
## 商品标题(30字以内)
|
||||
|
||||
SVN/Git日报周报月报一键生成工具 本地离线 AI分析
|
||||
|
||||
---
|
||||
|
||||
## 商品描述
|
||||
|
||||
### 一句话介绍
|
||||
|
||||
程序员必备效率工具!连接 SVN 或 Git 仓库,一键生成日报、周报、月报,支持 AI 自动分析工作量,导出 Markdown + Excel。
|
||||
|
||||
### 痛点场景
|
||||
|
||||
- 每周写周报要翻半天 Git 提交记录?
|
||||
- 项目经理要月度工作量统计,手动整理到崩溃?
|
||||
- 外包项目交付,需要提供工作量证明?
|
||||
- 团队成员多,汇总每个人的提交记录费时费力?
|
||||
|
||||
### 产品亮点
|
||||
|
||||
1. **一键生成**:选择仓库、选择周期、点击生成,3 步搞定
|
||||
2. **双仓库支持**:SVN 远程仓库 + Git 本地仓库都能用
|
||||
3. **三种周期**:日报 / 周报 / 月报,自动计算日期范围
|
||||
4. **AI 智能分析**:接入 DeepSeek AI,自动提炼工作摘要(可选)
|
||||
5. **Excel 导出**:直接生成工作量统计表,拿来就能用
|
||||
6. **Web 操作界面**:浏览器打开就能用,不需要命令行
|
||||
7. **本地离线运行**:数据不出你的电脑,安全放心
|
||||
8. **Docker 一键部署**:`make up` 一条命令启动
|
||||
|
||||
### 你会得到什么
|
||||
|
||||
- 完整源码(Java 8 + Spring Boot)
|
||||
- Windows 一键启动包(双击 start.bat 即可运行)
|
||||
- macOS / Linux 启动脚本
|
||||
- Docker 部署包
|
||||
- 详细用户手册 + 快速开始指南
|
||||
- 样例报表(周报 + 月报示例)
|
||||
- 售后技术支持
|
||||
|
||||
### 技术栈
|
||||
|
||||
Java 8 / Spring Boot 2.7 / SVNKit / JGit / Apache POI / DeepSeek API
|
||||
|
||||
### 适合谁
|
||||
|
||||
- 需要写日报周报月报的开发者
|
||||
- 需要统计团队工作量的项目经理
|
||||
- 需要提供工作量证明的外包团队
|
||||
- 想学习 Spring Boot + 前后端一体化项目的同学
|
||||
|
||||
### 运行环境
|
||||
|
||||
- Windows / macOS / Linux 均可
|
||||
- 需要 Java 8+(或 Docker)
|
||||
- AI 功能需要 DeepSeek API Key(免费额度够用很久)
|
||||
|
||||
---
|
||||
|
||||
## 定价建议
|
||||
|
||||
- 基础版(源码 + 文档):¥149
|
||||
- 标准版(+ 启动包 + 视频教程):¥299
|
||||
- 专业版(+ 一对一部署支持 + 定制需求沟通):¥599
|
||||
|
||||
---
|
||||
|
||||
## 商品标签(搜索关键词)
|
||||
|
||||
SVN, Git, 日报, 周报, 月报, 工作量统计, 报表工具, 程序员工具,
|
||||
AI分析, DeepSeek, Spring Boot, Java, 代码日志, 提交记录,
|
||||
工作量证明, 项目管理, 效率工具
|
||||
|
||||
---
|
||||
|
||||
## 买家常见问题(FAQ)
|
||||
|
||||
**Q: 需要什么技术基础?**
|
||||
A: 不需要编程基础。Windows 用户双击 start.bat 即可启动,打开浏览器操作。
|
||||
|
||||
**Q: AI 功能收费吗?**
|
||||
A: 工具本身不收费。AI 功能使用 DeepSeek API,新用户有免费额度,日常使用每月花费不到 1 元。不用 AI 也能正常生成报表。
|
||||
|
||||
**Q: 支持哪些 SVN/Git 服务器?**
|
||||
A: SVN 支持所有标准 SVN 服务器(VisualSVN、CollabNet 等)。Git 支持本地仓库(GitHub、GitLab、Gitee 克隆到本地的都行)。
|
||||
|
||||
**Q: 数据安全吗?**
|
||||
A: 完全本地运行,不上传任何数据。AI 分析只发送提交信息摘要(不含源码)。
|
||||
|
||||
**Q: 买了之后怎么获取更新?**
|
||||
A: 提供售后群,有更新会在群里通知。
|
||||
|
||||
**Q: 可以定制功能吗?**
|
||||
A: 专业版包含定制需求沟通,简单需求可免费实现。
|
||||
@@ -1,45 +0,0 @@
|
||||
SVN/Git 日报周报月报一键生成 - Docker 使用说明
|
||||
================================================
|
||||
|
||||
一、环境要求
|
||||
-----------
|
||||
- Docker 20.10+
|
||||
- Docker Compose v2+
|
||||
|
||||
|
||||
二、一键启动
|
||||
-----------
|
||||
将本目录下的 docker-compose.yml 放到任意位置,执行:
|
||||
|
||||
docker compose up -d
|
||||
|
||||
启动后访问:http://localhost:18088
|
||||
|
||||
查看状态:
|
||||
docker compose ps
|
||||
|
||||
停止服务:
|
||||
docker compose down
|
||||
|
||||
|
||||
三、数据持久化
|
||||
-----------
|
||||
生成的报表保存在宿主机的 ./outputs/ 目录下。
|
||||
容器重启后任务历史和输出文件不会丢失。
|
||||
|
||||
|
||||
四、AI 功能配置(可选)
|
||||
--------------------
|
||||
方式一:在 Web 工作台 → 系统设置中填入 API Key
|
||||
|
||||
方式二:通过环境变量传入(修改 docker-compose.yml):
|
||||
|
||||
services:
|
||||
svn-log-tool:
|
||||
environment:
|
||||
- DEEPSEEK_API_KEY=sk-your-key-here
|
||||
|
||||
|
||||
五、技术支持
|
||||
-----------
|
||||
如有问题,请联系卖家获取支持。
|
||||
@@ -1,15 +0,0 @@
|
||||
services:
|
||||
svn-log-tool:
|
||||
image: svn-log-tool:latest
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
container_name: svn-log-tool
|
||||
ports:
|
||||
- "18088:18088"
|
||||
volumes:
|
||||
- ./outputs:/app/outputs
|
||||
restart: unless-stopped
|
||||
# 如需配置 AI 功能,取消下方注释并填入 API Key
|
||||
# environment:
|
||||
# - DEEPSEEK_API_KEY=sk-your-key-here
|
||||
@@ -1,49 +0,0 @@
|
||||
SVN/Git 日报周报月报一键生成 - macOS / Linux 使用说明
|
||||
====================================================
|
||||
|
||||
一、环境要求
|
||||
-----------
|
||||
- macOS 10.12+ 或 Linux(Ubuntu/CentOS/Debian 等)
|
||||
- Java 8 或更高版本(JRE 即可)
|
||||
|
||||
安装 Java:
|
||||
macOS (Homebrew): brew install openjdk@8
|
||||
Ubuntu / Debian: sudo apt install openjdk-8-jre
|
||||
CentOS / RHEL: sudo yum install java-1.8.0-openjdk
|
||||
|
||||
|
||||
二、使用方法
|
||||
-----------
|
||||
1. 打开终端,进入本目录
|
||||
2. 执行启动脚本:
|
||||
./start.sh
|
||||
3. 浏览器打开 http://localhost:18088
|
||||
4. 在 Web 工作台中操作
|
||||
|
||||
|
||||
三、AI 工作量分析(可选)
|
||||
-----------------------
|
||||
如需使用 AI 自动分析功能:
|
||||
1. 访问 https://platform.deepseek.com 获取 API Key
|
||||
2. 在 Web 工作台 → 系统设置 → 填入 API Key
|
||||
3. 生成报表时勾选"启用 AI 摘要"
|
||||
|
||||
不配置 API Key 也可正常使用基础报表功能。
|
||||
|
||||
|
||||
四、常见问题
|
||||
-----------
|
||||
Q: 提示 Permission denied?
|
||||
A: 执行 chmod +x start.sh 赋予执行权限。
|
||||
|
||||
Q: 端口 18088 被占用?
|
||||
A: 关闭占用该端口的程序,或在 jar 同目录下创建
|
||||
application.properties 文件,添加 server.port=8080
|
||||
|
||||
Q: 输出文件在哪里?
|
||||
A: 在 start.sh 同目录的 outputs/ 文件夹下。
|
||||
|
||||
|
||||
五、技术支持
|
||||
-----------
|
||||
如有问题,请联系卖家获取支持。
|
||||
@@ -1,53 +0,0 @@
|
||||
#!/bin/bash
|
||||
# SVN/Git 日报周报月报一键生成 - 启动脚本
|
||||
|
||||
echo "============================================"
|
||||
echo " SVN/Git 日报周报月报一键生成"
|
||||
echo " 本地离线报表生成工具"
|
||||
echo "============================================"
|
||||
echo ""
|
||||
|
||||
# 检查 Java 环境
|
||||
if ! command -v java &> /dev/null; then
|
||||
echo "[错误] 未检测到 Java 环境。"
|
||||
echo ""
|
||||
echo "请安装 Java 8 或更高版本:"
|
||||
echo ""
|
||||
echo " macOS (Homebrew):"
|
||||
echo " brew install openjdk@8"
|
||||
echo ""
|
||||
echo " Ubuntu / Debian:"
|
||||
echo " sudo apt install openjdk-8-jre"
|
||||
echo ""
|
||||
echo " CentOS / RHEL:"
|
||||
echo " sudo yum install java-1.8.0-openjdk"
|
||||
echo ""
|
||||
echo "安装完成后,请重新运行本脚本。"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 显示 Java 版本
|
||||
JAVA_VER=$(java -version 2>&1 | head -n 1)
|
||||
echo "[信息] 检测到 Java: $JAVA_VER"
|
||||
echo ""
|
||||
|
||||
# 检查 jar 文件
|
||||
JAR_FILE="svn-log-tool-1.0.0-jar-with-dependencies.jar"
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
|
||||
if [ ! -f "$SCRIPT_DIR/$JAR_FILE" ]; then
|
||||
echo "[错误] 未找到 $JAR_FILE"
|
||||
echo "请确认 jar 文件与本脚本在同一目录下。"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 创建输出目录
|
||||
mkdir -p "$SCRIPT_DIR/outputs"
|
||||
|
||||
echo "[启动] 正在启动 Web 工作台..."
|
||||
echo "[信息] 启动后请在浏览器中访问: http://localhost:18088"
|
||||
echo "[信息] 按 Ctrl+C 可停止服务"
|
||||
echo ""
|
||||
|
||||
cd "$SCRIPT_DIR"
|
||||
java -jar "$JAR_FILE"
|
||||
@@ -1,59 +0,0 @@
|
||||
SVN/Git 日报周报月报一键生成 - Windows 使用说明
|
||||
================================================
|
||||
|
||||
一、环境要求
|
||||
-----------
|
||||
- Windows 7 / 10 / 11
|
||||
- Java 8 或更高版本(JRE 即可)
|
||||
|
||||
如果尚未安装 Java,请访问以下地址下载:
|
||||
https://adoptium.net/
|
||||
选择 "JRE 8 (LTS)" → Windows x64 → 下载安装
|
||||
|
||||
安装后在命令行输入 java -version 确认安装成功。
|
||||
|
||||
|
||||
二、使用方法
|
||||
-----------
|
||||
1. 双击 start.bat 启动服务
|
||||
2. 浏览器打开 http://localhost:18088
|
||||
3. 在 Web 工作台中操作:
|
||||
- 选择仓库类型(SVN 或 Git)
|
||||
- 选择报表周期(日报/周报/月报)
|
||||
- 填写仓库信息,点击"生成"
|
||||
4. 生成的报表在 outputs/ 目录下
|
||||
|
||||
|
||||
三、AI 工作量分析(可选)
|
||||
-----------------------
|
||||
如需使用 AI 自动分析功能:
|
||||
1. 访问 https://platform.deepseek.com 注册并获取 API Key
|
||||
2. 在 Web 工作台 → 系统设置 → 填入 API Key
|
||||
3. 生成报表时勾选"启用 AI 摘要"
|
||||
|
||||
不配置 API Key 也可正常使用基础报表功能。
|
||||
|
||||
|
||||
四、常见问题
|
||||
-----------
|
||||
Q: 双击 start.bat 闪退?
|
||||
A: 右键 start.bat → 以管理员身份运行,查看错误信息。
|
||||
通常是 Java 未安装或未加入 PATH。
|
||||
|
||||
Q: 端口 18088 被占用?
|
||||
A: 关闭占用该端口的程序,或修改 jar 同目录下的
|
||||
application.properties 中的 server.port。
|
||||
|
||||
Q: SVN 连接失败?
|
||||
A: 检查 SVN 地址、用户名、密码是否正确。
|
||||
确认网络可以访问 SVN 服务器。
|
||||
|
||||
Q: 输出文件在哪里?
|
||||
A: 在 start.bat 同目录的 outputs/ 文件夹下。
|
||||
- outputs/md/ Markdown 报表
|
||||
- outputs/excel/ Excel 工作量统计
|
||||
|
||||
|
||||
五、技术支持
|
||||
-----------
|
||||
如有问题,请联系卖家获取支持。
|
||||
@@ -1,53 +0,0 @@
|
||||
@echo off
|
||||
chcp 65001 >nul 2>&1
|
||||
title SVN/Git 日报周报月报一键生成
|
||||
|
||||
echo ============================================
|
||||
echo SVN/Git 日报周报月报一键生成
|
||||
echo 本地离线报表生成工具
|
||||
echo ============================================
|
||||
echo.
|
||||
|
||||
:: 检查 Java 环境
|
||||
where java >nul 2>&1
|
||||
if %errorlevel% neq 0 (
|
||||
echo [错误] 未检测到 Java 环境。
|
||||
echo.
|
||||
echo 请安装 Java 8 或更高版本:
|
||||
echo 下载地址: https://adoptium.net/
|
||||
echo 选择 JRE 8 (LTS) 下载安装即可。
|
||||
echo.
|
||||
echo 安装完成后,请重新运行本脚本。
|
||||
echo.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:: 检查 Java 版本
|
||||
for /f "tokens=3" %%v in ('java -version 2^>^&1 ^| findstr /i "version"') do (
|
||||
set JAVA_VER=%%v
|
||||
)
|
||||
echo [信息] 检测到 Java 版本: %JAVA_VER%
|
||||
echo.
|
||||
|
||||
:: 检查 jar 文件
|
||||
set JAR_FILE=svn-log-tool-1.0.0-jar-with-dependencies.jar
|
||||
if not exist "%JAR_FILE%" (
|
||||
echo [错误] 未找到 %JAR_FILE%
|
||||
echo 请确认 jar 文件与本脚本在同一目录下。
|
||||
echo.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:: 创建输出目录
|
||||
if not exist "outputs" mkdir outputs
|
||||
|
||||
echo [启动] 正在启动 Web 工作台...
|
||||
echo [信息] 启动后请在浏览器中访问: http://localhost:18088
|
||||
echo [信息] 按 Ctrl+C 可停止服务
|
||||
echo.
|
||||
|
||||
java -jar "%JAR_FILE%"
|
||||
|
||||
pause
|
||||
Reference in New Issue
Block a user