SVN Manager
SVN 管理工具 - 多项目管理界面
技术栈
- 前端: Vue 3 + Vite + Pinia + Axios(IDEA 风格深色主题)
- 后端: Java 17 + Spring Boot 3,REST API,本地调用
svnCLI - 配置: 项目列表存储在
~/.svn-manager/projects.json
项目结构
svn-manager/
├── backend/ # Java Spring Boot 后端
│ ├── src/main/java/com/svnmanager/
│ │ ├── controller/ # REST 控制器
│ │ ├── service/ # SVN 服务与文件树
│ │ ├── model/ # 数据模型
│ │ └── util/ # 配置与进程工具
│ └── pom.xml
├── frontend/ # Vue 3 前端
│ ├── src/
│ │ ├── api/ # API 客户端
│ │ ├── components/ # 侧栏、工具栏、文件树、弹窗
│ │ ├── stores/ # Pinia 状态
│ │ └── App.vue
│ └── package.json
└── README.md
运行方式
前置要求
- JDK 17+
- Node.js 18+
- 系统已安装
svn并已在 PATH 中
1. 启动后端
cd backend
mvn spring-boot:run
后端默认端口:8080,API 前缀:/api。
2. 启动前端
cd frontend
npm install
npm run dev
浏览器访问 Vite 提供的地址(如 http://localhost:5173)。开发环境下 Vite 会将 /api 代理到 http://localhost:8080。
3. 生产构建
- 后端:
cd backend && mvn package,运行java -jar target/svn-manager-backend-1.0.0.jar - 前端:
cd frontend && npm run build,将dist/部署到任意静态服务器,并配置 API 代理或同域部署
功能说明
- 项目列表:左侧栏展示已配置项目,点击切换当前项目
- 添加项目:填写本地工作副本路径(及可选 SVN 地址、账号密码)保存到
~/.svn-manager/projects.json - 文件树:选中项目后自动拉取
svn status并展示树形结构,支持 SVN 状态徽章(M/A/D/C/?) - 工具栏:刷新状态、更新、提交、日志、差异;提交/日志/差异通过弹窗完成
许可证
MIT License
Description
Languages
Java
41.7%
Vue
28.4%
HTML
20.3%
JavaScript
5.6%
Shell
1.4%
Other
2.6%