贡献指导¶
约 910 个字 4 行代码 预计阅读时间 5 分钟
WIP
本页尚不完善!欢迎参与共同维护!
本文主要是为了统一社区贡献风格而做的一些约定,以向贡献者提供更好的协作体验、向资源使用者提供更好的阅读体验。
标准工作流程¶
初始化¶
Important
初始化操作可联系常驻维护者代为设置,此页更多是作为流程备忘录设置;但如果你有兴趣自己设置也可以尝试自行遵循如下步骤。
目前 ZIJI 提供了 MkDocs 的快速启动模板 F-MkDocs-Template,维护者可以选择基于本仓库进行内容编写,专注于内容编写而无需在意其它的配置内容。
使用该模板进行初始化,请遵循以下步骤:
- 克隆 F-MkDocs-Template 作为 codebase
git clone git@github.com:ZIJI-CS/F-MkDocs-Template.git <LocalRepoName> # Replace <LocalRepoName>!
- 运行
scripts/init.sh
完成初始化设置cd <LocalRepoName> # Replace <LocalRepoName>! ./scripts/init.sh # Remove `.trash` folder if you want after running this.
- 修改
mkdocs.yaml
来进行基础设置- 检查所有
#TODO
注释,其中nav
需要在文章内容更新过程中同步进行修改 - 具体每个配置项的含义,请参考注释
- 检查所有
- 修改
docs/index.md
来填写课程信息,初始化内容 - 在组织中创建 repo,启动 GitHub Action、Pages 服务,并提交 commit,检查是否正常(此步骤可委托管理员进行)
- 修改 repo 的 About 项,填入 page URL
特别的,对于仓库命名,我们做如下约定:
- 除特殊仓库,其它仓库命名应当遵守
{Flag}-{Name}
的形式 - 其中,
{Flag}
标识仓库功能,{Name}
标识仓库内容 {Flag}
包括:- T(tutorial): 笔记、教程类内容资源,例如数字逻辑设计课程笔记
- F(functional): 功能类仓库,例如模板库
- ...
同步模板¶
有时候我们会对 F-MkDocs-Template 做一些更新,各基于此仓库展开的仓库都应当适时同步这些更新。我们已经提供了自动化的脚本来实现比较基础的同步,您可以通过执行如下命令来进行同步:
./scripts/sync_base.sh
但众所周知,版本合并是一个比较复杂的问题,如果当前项目在此前进行了修改导致出现了合并冲突,那是很正常的。此时脚本会提示您手动解决冲突。完成之后,您需要从 ./scripts/sync_base.sh
的 Step 7 (update the commit hash) 开始手动完成剩下步骤。
后续维护指导¶
直接与笔记内容有关的部分,应当全部放在 docs
目录下,并遵循如下组织结构:
.
├── index.md
├── 0-x.md
├── 1-x.md
├── ...
└── imgs
├── ZIJI-LOGO.png
└── ...
如果有非图片类多媒体资源,请根据媒体类型创建对应的文件夹。当然,资源管理只要做到整齐即可,如果维护者认为这种结构不合适,也可以选择使用更清晰的组织方式。
写作风格指导¶
并不对写作风格做严格要求,但是最起码请保证全文风格统一,保证最基本的美观和整洁。
如下是一些建议:
- 引用内容做好来源标注
- 中西文之间使用空格隔开,例如:「不论 R/W 置任何值,读操作都在正常进行」
- 不要混用中文括号
()
和英文括号()
,建议使用英文括号()
进行术语翻译,用中文括号()
进行补充说明,例如:「浙江大学(Zhejiang University, ZJU)位于浙江省杭州市(这里特指紫荆港校区)」 - 更多内容可以参考 xg 的这份 文档降压宝典