# 本地工具箱 **Repository Path**: gtnotgod/local-toolbox ## Basic Information - **Project Name**: 本地工具箱 - **Description**: 本地工具箱:项目包含部署,打包,Maven,项目管理等等 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-02 - **Last Updated**: 2026-09-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Local Toolbox 本地开发运维工具箱 - Windows 桌面应用 ## 项目简介 Local Toolbox 是一个基于 PySide6 + qfluentwidgets 开发的 Windows 桌面应用,旨在为开发者提供一站式的本地开发运维工具集。项目采用模块化架构设计,集成了部署管理、Git 操作、Maven 构建、打包发布、JSON 处理等常用功能。 ## 功能特性 ### 🚀 部署管理 - 多环境配置管理(开发、测试、生产等) - 支持 SSH 远程连接与命令执行 - 流水线式部署流程(备份 → 构建 → 上传 → 重启 → 健康检查) - 实时日志输出与进度展示 - Docker 容器健康检测 ### 📦 Git 统一管理 - 批量管理多个 Git 仓库 - 一键拉取所有仓库代码 - 仓库状态实时检测(分支、领先/落后、变更) - 分支合并操作支持 - 项目筛选与分页展示 ### 🏗️ Maven 构建 - Maven 项目管理与构建 - 支持多种构建操作(clean、install、package 等) - 构建日志实时输出 - 多项目批量构建 ### 📁 打包发布 - 后端项目打包(JAR 包复制) - 前端项目打包(PNPM 构建 + ZIP 压缩) - 自定义输出目录 - 流水线步骤可视化 ### 🔧 JSON 工具 - JSON 格式化与压缩 - 语法高亮显示 - 树形结构可视化 - 代码折叠支持 - 行号显示 ### ⚙️ 设置管理 - 环境配置管理 - 项目配置管理 - 本地环境变量配置 - 配置文件导入(INI、CONF 格式) ## 技术栈 - **GUI 框架**: PySide6 + PySide6-Fluent-Widgets (qfluentwidgets) - **远程/加密**: paramiko (SSH/SFTP) + cryptography (密码加密存储) - **Python 版本**: Python 3.9+ - **打包工具**: PyInstaller ## 项目结构 ``` local-toolbox/ ├── app/ │ ├── core/ # 核心引擎 │ │ ├── config_manager.py # 配置管理 │ │ ├── deploy_engine.py # 部署引擎 │ │ ├── git_engine.py # Git 引擎 │ │ ├── maven_engine.py # Maven 引擎 │ │ ├── package_engine.py # 打包引擎 │ │ └── process_runner.py # 进程运行器 │ ├── models/ # 数据模型 │ │ ├── environment.py │ │ ├── project.py │ │ └── pipeline_step.py │ ├── pages/ # 页面组件 │ │ ├── dashboard_page.py │ │ ├── deploy_page.py │ │ ├── git_page.py │ │ ├── json_tool_page.py │ │ ├── maven_page.py │ │ ├── package_page.py │ │ └── settings_page.py │ ├── widgets/ # 通用组件 │ │ ├── env_selector.py │ │ ├── log_widget.py │ │ ├── pipeline_widget.py │ │ └── project_card.py │ ├── main_window.py # 主窗口 │ └── styles.py # 主题样式 ├── assets/ # 静态资源 ├── docs/ # 设计文档 ├── main.py # 入口文件 └── requirements.txt # 依赖 ``` ## 快速开始 ### 环境要求 - Python 3.8+ - Windows 操作系统 ### 安装依赖 ```bash pip install -r requirements.txt ``` ### 运行应用 ```bash python main.py ``` ### 打包为 EXE 提供两种方式打包为独立可执行文件: #### 方式一:一键打包脚本(推荐) ```bash python build_exe.py ``` 脚本会自动清理旧的 `build/` 和 `dist/` 目录,并调用 PyInstaller 完成打包。可选参数: ```bash python build_exe.py --no-clean # 保留旧的构建目录 python build_exe.py --upx # 启用 UPX 压缩(需 UPX 在 PATH 中) ``` #### 方式二:直接使用 PyInstaller ```bash pyinstaller DevOpsToolkit.spec ``` 打包后的可执行文件位于 `dist/DevOpsToolkit.exe`。 ## 主题切换 应用支持明暗主题切换,默认使用暗色主题。点击侧边栏顶部的主题切换按钮即可切换主题。 ## 配置说明 ### 配置文件位置 所有运行时数据统一存放在**用户数据根目录**,不写入程序安装目录: ``` %APPDATA%/DevOpsToolkit/ # 数据根目录 ├── configs/ # 配置 │ ├── environments.json # 环境配置(SSH 密码基于机器特征加密存储) │ ├── projects.json # 项目配置 │ ├── settings.json # 应用设置 │ ├── help_commands.json # help 命令 │ └── api_history.json # API 调用历史 ├── cache/ # 缓存 ├── exports/ # 导出文件 └── logs/ # 日志 ``` - 开发模式(`python main.py`)与打包模式(exe)读写**同一份数据**; - 项目根目录下的 `configs/` 为历史遗留目录,程序已不再读写,可自行删除; - 分发的 exe 内不含任何配置数据,他人首次运行得到的是干净的空配置; - 迁移提示:SSH 密码按机器特征加密,把配置目录拷到他人机器后需重新录入密码。 ### 环境配置 在设置页面中添加部署环境,包括: - 环境名称 - SSH 主机地址 - 端口号 - 用户名 - 认证方式(密码/密钥) - 远程目录路径 ### 项目配置 添加项目时需指定: - 项目名称 - 项目类型(后端/前端) - 本地路径 - 构建命令(可选) - 部署相关配置 ## 许可证 MIT License