logo
0
0
WeChat Login

/Release/v0.1.0

release v0.1.0
OverviewDeployMetadata

Release Log

v0.1.0 (2026-05-08)

首个可用版本,实现完整的 Git 仓库备份工作流。

功能特性

命令功能状态
git-backup init初始化配置、创建默认配置文件和示例仓库列表
git-backup clone批量克隆仓库(并发控制 + 进度条 + 重试)
git-backup pull批量增量更新(并发控制 + 进度条 + 重试)
git-backup backup完整备份(自动分流 clone/pull + 历史记录)
git-backup pack打包备份为 tar.gz(进度条 + 跳过已有归档)

技术架构

git-backup/
├── src/
│   ├── main.rs         # CLI 入口(clap),5 个子命令
│   ├── config.rs       # 配置管理(TOML 序列化/验证/合并 CLI)
│   ├── logger.rs       # 日志系统(tracing)
│   ├── file_io.rs      # 文件 I/O(仓库列表/备份记录/目录清理)
│   ├── git_ops.rs      # Git 操作(clone/pull + 重试 + 并发 + 进度)
│   ├── backup.rs       # 备份流程(自动分流 + 历史管理)
│   └── packager.rs     # 打包模块(tar.gz + file 过滤 + 进度条)
├── docs/               # 项目文档
└── Cargo.toml          # Rust 依赖管理

关键依赖

依赖用途版本
clapCLI 框架4.5 (derive)
tokio异步运行时1.0 (rt-multi-thread + sync + time)
flate2 + tar压缩打包1.0 / 0.4
indicatif进度条0.17
tracing日志0.1
serde + toml配置序列化1.0 / 0.8

测试覆盖

模块测试数覆盖内容
config.rs11默认值、验证、CLI 合并、文件存在性
file_io.rs15目录创建、仓库列表读写、备份记录、旧备份清理
git_ops.rs10URL 解析、仓库名提取、.git 目录检测
packager.rs10tar.gz 识别、文件收集、错误格式处理
backup.rs2仓库名提取、状态结构构造
总计48全部通过

构建验证

cargo build       ✅ 成功
cargo test        ✅ 48/48 通过
git-backup pack   ✅ 正常工作

版本计划

版本计划内容状态
v0.1.0核心功能 + 阶段一单元测试✅ 已发布
v0.2.0阶段二/三集成测试📋 待实现
Attachment
2026-05-08 22:00:44
2026-05-08 22:00:44