[任务] 实现 DicFuse 系统目录结构的适应性下载与缓存
[任务分值] 25 分
[背景描述] 在代码目录的只读文件系统 DicFuse 中,用户浏览大型仓库目录时,一次性加载全部目录结构可能导致性能问题。为优化体验,需实现一个按需加载的目录系统:根据用户访问深度动态加载子目录,并缓存代码内容以减少重复请求。
[需求描述] 开发一个支持以下功能的目录浏览系统:
- 按需加载目录层级:用户首次打开目录时仅加载一定层级(可配置)的子目录和文件。
- 动态深度扩展:当用户展开更深层目录时,自动拉取下一层结构。
- 智能缓存机制:对已访问的目录结构和代码内容进行本地或服务端缓存。
- 自动化预加载:根据用户访问模式预测并预加载潜在需要的目录层级。
[代码标准]
- 所有 PR 提交必须签署
Signed-off-by 和 使用 GPG 签名,即提交代码时(使用 git commit 命令时)至少使用 -s -S 两个参数,参考 Contributing Guide;
- 所有 PR 提交必须通过
GitHub Actions 自动化测试,提交 PR 后请关注 GitHub Actions 结果;
- 代码注释均需要使用英文;
[PR 提交地址] 提交到 mega 仓库的 main 分支 Scorpio 目录;
[开发指导]
- 认领任务参考 r2cn 开源实习计划 - 任务认领与确认;
[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在 #p-meta 频道和导师交流。
- Quanyi Ma genedna@gmail.com
- Tianxing Ye yetianxing2014@gmail.com
[备注]
- 认领实习任务的同学,必须完成测试任务和注册流程,请参考: r2cn 开源实习计划 - 测试任务 和 r2cn 开源实习计划 - 学生注册与审核
[任务] 实现 DicFuse 系统目录结构的适应性下载与缓存
[任务分值] 25 分
[背景描述] 在代码目录的只读文件系统 DicFuse 中,用户浏览大型仓库目录时,一次性加载全部目录结构可能导致性能问题。为优化体验,需实现一个按需加载的目录系统:根据用户访问深度动态加载子目录,并缓存代码内容以减少重复请求。
[需求描述] 开发一个支持以下功能的目录浏览系统:
[代码标准]
Signed-off-by和 使用GPG签名,即提交代码时(使用git commit命令时)至少使用-s -S两个参数,参考 Contributing Guide;GitHub Actions自动化测试,提交 PR 后请关注GitHub Actions结果;[PR 提交地址] 提交到 mega 仓库的
main分支Scorpio目录;[开发指导]
[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在
#p-meta频道和导师交流。[备注]