Commit Graph

63 Commits

Author SHA1 Message Date
HouXiaoxuan
cc428bcae2 清理警告,删除不需要的util,注释暂时不用的成员函数,为仅测试函数加宏 2023-12-28 22:45:19 +08:00
HouXiaoxuan
f88ab0e33a 修改Blob逻辑,主要变更为 Blob 与 objects文件解构。store作为与objects文件交互的唯一依赖。具体为:
1. Blob使用Content新建而不是path
2. workdir的读写能力由util::read|write workfile提供
3. 判断文件是否更改不直接计算hash,经由新建一个不保存的Blob进行。现在Hash算法只由Store决定。
2023-12-28 22:25:54 +08:00
HouXiaoxuan
b3aea1d0d1 为Blob增加压缩支持,IO优化放置到Store中 2023-12-28 22:02:02 +08:00
HouXiaoxuan
cdc289b3bb 拆分util文件 2023-12-28 18:52:30 +08:00
mrbeanc
2106951787 恢复index更改 2023-12-28 18:39:47 +08:00
HouXiaoxuan
511a3d6c6e 将test的util函数移动到test宏下,去除unused警告 2023-12-28 15:03:15 +08:00
HouXiaoxuan
6d697e3e74 删除lib.rs,调整文件结构 2023-12-28 15:02:14 +08:00
mrbeanc
3a4973ce9b Revert "根据GPT说法,18年以后Rust可以去掉mod.rs"
This reverts commit 228e1d681e.
2023-12-28 13:55:25 +08:00
mrbeanc
4e1e13f71e 删除Index析构自动保存,时机不可控,改为手动+main结束自动save 2023-12-28 13:53:48 +08:00
mrbeanc
b568e87925 将Index改为单例模式,防止状态不一致; 注意:测试为单进程,需要reset防止共享单例 2023-12-28 13:53:47 +08:00
HouXiaoxuan
228e1d681e 根据GPT说法,18年以后Rust可以去掉mod.rs 2023-12-27 22:12:47 +08:00
mrbeanc
9773a83ae2 restore: 优化报错 & 编写测试 2023-12-25 16:31:32 +08:00
mrbeanc
6814a48bb9 fix-test: 修正分隔符问题 2023-12-24 22:42:07 +08:00
mrbeanc
9de7685381 Revert "fix path 跨系统不一致"
This reverts commit 263cd36acc.
2023-12-24 22:35:50 +08:00
mrbeanc
0e7c964af5 del: 删除unify_path_separator(),只有测试手动输入会出问题,用户输入肯定都是对应平台,不需要特殊处理跨平台 2023-12-24 22:34:57 +08:00
HouXiaoxuan
263cd36acc fix path 跨系统不一致 2023-12-24 21:32:21 +08:00
mrbeanc
ee4ab06da3 完善restore逻辑,默认从index恢复(若没有--source且没有--staged) 2023-12-24 18:01:15 +08:00
mrbeanc
7015c9b90a fix: 修复get_relative_path()不能处理上级目录文件的bug,如[../a.txt] 2023-12-24 13:21:46 +08:00
mrbeanc
07dfd24d32 fix: status命令对当前目录进行过滤 & 改进util泛型模板 2023-12-24 11:46:07 +08:00
mrbeanc
3272b793da fix: restore删除文件时,级联检查删除空文件夹(除了当前目录) 2023-12-24 00:30:02 +08:00
mrbeanc
f61f2627ee fix: 完善to_workdir_absolute_path() 2023-12-23 22:33:07 +08:00
HouXiaoxuan
3017fe9a95 add util subpath工具 2023-12-23 22:14:42 +08:00
mrbeanc
655224e1cb 优化:小重构restore 提升可读性 2023-12-23 20:12:33 +08:00
mrbeanc
028a044ad5 fix: is_dir依赖文件存在性,在restore中删除使用 2023-12-23 18:25:23 +08:00
mrbeanc
c975d02ef0 fix: 修正restore_index()行为,从index筛选文件而非工作区 2023-12-23 17:48:11 +08:00
mrbeanc
d4009cd2cf 基本实现restore命令 2023-12-23 16:11:54 +08:00
mrbeanc
319f15cb31 fix: 修正一些路径统一问题 2023-12-23 12:45:26 +08:00
HouXiaoxuan
f944ce9182 add util::ensure_no_file 2023-12-23 10:44:49 +08:00
HouXiaoxuan
c8b45c0b83 去除setup_with_mit,使用clarm_mit代替 2023-12-23 10:44:49 +08:00
HouXiaoxuan
055dc49f52 Revert "setup_test_with_clean_mit() 会清理文件"
This reverts commit 13aa7452de.
2023-12-23 10:44:49 +08:00
HouXiaoxuan
13aa7452de setup_test_with_clean_mit() 会清理文件 2023-12-23 10:12:58 +08:00
mrbeanc
ce2251fff6 test-fix: 修正测试中的问题 2023-12-22 23:50:23 +08:00
mrbeanc
1e16179e0a restore: 实现restore_worktree() 2023-12-22 21:02:22 +08:00
mrbeanc
b9b8d9c704 fix: 修复add命令检测workdir(而非curDir)中deleted files的问题 2023-12-22 14:49:52 +08:00
mrbeanc
49a7220ad8 手动实现相对路径->绝对路径,解决add不存在文件panic问题 2023-12-22 14:39:41 +08:00
HouXiaoxuan
0ab07cc4c4 增加hash类型判断 2023-12-22 13:23:10 +08:00
HouXiaoxuan
5c439aeff2 重新format,对use进行排序 2023-12-22 09:03:51 +08:00
mrbeanc
5f1d115658 实现:status命令
TODO:add 不存在的文件报错
2023-12-22 00:11:04 +08:00
mrbeanc
d67644eb9c 新增:add命令检测file在repo外或在.mit内 2023-12-21 21:48:07 +08:00
mrbeanc
737917e421 rustfmt: max-width=120 2023-12-21 20:54:12 +08:00
mrbeanc
a2e9072951 统一format格式(rustfmt) 2023-12-21 20:44:15 +08:00
HouXiaoxuan
526210b1db 解决TODO&创建TODO 2023-12-21 19:15:43 +08:00
mrbeanc
1d6e648120 优化changes_to_be_committed() 2023-12-21 15:42:30 +08:00
mrbeanc
05101c98ef fix: 修正get_tracked_files(),不需要判断文件是否存在于磁盘 2023-12-21 15:18:23 +08:00
mrbeanc
a459a0922e fix:去除current_head()返回值中的\n
\n会导致文件写入失败
2023-12-21 14:25:40 +08:00
HouXiaoxuan
0c154163ed status 实现一半 2023-12-21 03:20:04 +08:00
HouXiaoxuan
500a1de45c 优化panic 2023-12-21 01:48:37 +08:00
HouXiaoxuan
94c2cadf72 增加测试工具函数ensure_test_file 2023-12-21 01:39:26 +08:00
HouXiaoxuan
85917e1be4 增加一个路径查找的兜底 2023-12-21 00:03:25 +08:00
HouXiaoxuan
0c82e91a4b 彩色panic信息 2023-12-20 23:25:54 +08:00