V2EX 06月18日 21:10
[程序员] 因为不满 git,我写了自己的本地版本管理工具 Rustory
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Rustory 是一款基于 Rust 开发的版本控制工具,专为个人开发者设计,旨在简化项目快照、历史记录和配置的管理。它提供类似 Git 的功能,但更侧重于易用性,尤其适合实验性代码、脚本、配置文件等场景。Rustory 本地优先、轻量高效,拥有快照管理、差异比较、标签系统等核心特性,帮助用户轻松跟踪和还原项目文件的变更,是个人项目版本控制的理想选择。

🚀 Rustory 专注于个人项目,尤其适用于脚本、配置文件、文档的版本管理,以及实验性代码的快照保存。它简化了版本控制流程,让开发者可以更专注于代码本身。

💡 Rustory 的设计目标是本地优先、轻量高效、简单易用。它采用纯 Rust 实现,无外部依赖,启动快速,拥有直观的命令行界面,方便开发者快速上手和使用。

✅ Rustory 拥有核心特性,包括快照管理、差异比较、标签系统、忽略规则、垃圾回收、完整性验证和丰富统计。这些功能共同提供了强大的版本控制能力,帮助开发者更好地管理和维护项目。

💾 Rustory 采用内容去重和压缩存储,以节省磁盘空间。同时,它还提供了数据完整性检查和修复功能,确保数据的可靠性。

🌱 Rustory 适用于快速原型开发和学习环境,方便开发者进行版本控制概念的学习和实践。对于不需要复杂工作流的小型项目和二进制文件,Rustory 也能提供良好的支持。

实验性代码的快照保存!

https://github.com/uselibrary/rustory


写 python 测试程序(运维狗/验证狗),会出现好几个版本都要用,版本与版本之间存在微小差异,但是又具有延续性。既要来回对比,又要反复改动。每次用 git 来回跳,操作着一堆 git 命令,偶尔还忘了到底哪个是哪个,只能在命名上加内容,最终名称比我皮带还长,过几天我还忘了到底哪个是哪个。测试期间生成的文件,大多数是重名的,反复测试导致覆盖,后面再想找回来又是 git 一顿输入,再配合上一顿拍大腿。

觉得 git 不满足我的要求,那我就自己重复造轮子。

rustory commit -m "提交 v2 版本测试参数" # 提交版本rustory commit -m "添加图像显示新功能" # 提交新功能rustory history # 查看记录ID       时间                     +  ~  -  消息ab12cd   2025-06-18T15:30:00      2  1  0  "添加图像显示新功能"ef34gh   2025-06-17T10:15:30      5  0  2  "提交 v2 版本测试参数"rustory rollback ef34gh # ./rustory-backup/backup-2025-06-17T10:15:30/* # 将特定版本的完整快照恢复到 rustory-backup 文件夹中

Rustory 是一个基于 Rust 的版本控制工具,为个人开发者提供简单直观的版本控制旨,轻松管理项目的快照历史记录配置。它提供了类似于 Git 的功能,但 Rustory 不是 Git 的替代品。Rustory 更专注于易用性,即跟踪快照还原项目文件变更。

🚀 Rustory 的优势场景

🎯 设计目标

🏗️ 核心特性

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Rustory 版本控制 Rust 快照
相关文章