最近在做一项业务,面向中小学生提供在线查看的试卷资源,试卷全部为 PDF 文件。为了方便及规范管理,每份试卷会在数据库中生成一个唯一标识,标识里会记录下面这些信息:
- 对应教材版本,如人教版为 1 、XX 版为 2
- 对应学科,如语文为 1 、数学为 2 、英语为 3
- 对应年级,小学一年级为 1 、二年级为 2
- 对应学期,上学期为 1,下学期为 2
- 对应单元,期中为 98,期末为 99
- 试卷编号,对应到以上各级别分类之后,在所属分类下的试卷编号,暂定 0001 ~ 0009
最终某份试卷的唯一标识就会是 2112010001 这种形式,这样不管是我们这边进行管理,还是用户反馈试卷上的各种问题,都可以通过这个唯一标识迅速找到目标试卷。
试卷物理文件的存储,目前不考虑收费的 OSS 之类的方案,打算直接存放在阿里云服务器的磁盘上。
第一个问题,就是存放 PDF 物理文件的目录结构的设计,有什么好的方案可以参考么?比如根据教材版本、学科、年级等信息,放到对应的文件夹下,这样单个文件夹内的文件数量不会太多。
第二个问题就是 PDF 文件的版本控制,因为即使在发布试卷资源之前做了各种检查,也难免会有疏漏,后续还需要不断地对有问题的试卷进行修改,没有版本控制很容易一团糟。对于 PDF 这种文件,有什么合适的版本控制方案么?还是说直接 git-lfs 就可以?