贡献指南
相关源文件
本文档概述了为CS自学指南项目做出贡献的流程和指南。任何人都可以通过添加新课程、建议改进现有内容、提供翻译或修复错误来帮助改进此资源。
有关添加新课程的具体指导,请参阅添加新课程。有关翻译贡献,请参考翻译工作流程。
贡献方法概述
有几种方法可以为CS自学指南做出贡献
- 添加新课程 - 记录尚未包含在指南中的课程
- 改进现有内容 - 优化课程描述或资源列表
- 翻译内容 - 协助多语言支持
- 添加书籍推荐 - 扩展推荐阅读资源
- 报告错误 - 提交问题进行修正
- 参与讨论 - 在评论区贡献对话
贡献工作流程
为项目做出贡献的通用流程遵循标准的GitHub工作流程
来源:README.md31-39
内容格式要求
所有贡献必须遵循特定的格式指南,以保持项目的一致性。
Markdown 风格指南
贡献应遵循正确的Markdown格式
- 使用正确的标题层级(# 代表主标题,## 代表章节等)
- 遵循中英文混排排版指南
- 使用带有适当语言标签的代码块
- 统一列表格式
- 在适当情况下使用参考式链接
来源:template.md1-38
添加新课程
向指南添加新课程时,请遵循以下步骤
- 使用 template.md 文件作为起点
- 填写所有必填部分并提供适当信息
- 如果可用,请添加您的实现资源
- 更新 mkdocs.yml 文件以在导航中包含新课程
- 提交包含您更改的拉取请求
课程模板结构
新课程模板包含以下部分
| 章节 | 描述 | 必需字段 |
|---|
| 课程标题 | 基本课程标识 | 课程编号、名称 |
| 课程介绍 | 课程内容概述 | 大学、先修课程、编程语言、难度评级、预估学时 |
| 课程资源 | 官方材料链接 | 课程网站、视频讲座、教科书、作业 |
| 资源汇总 | 您的实现链接 | 包含解决方案和笔记的GitHub仓库 |
来源:template.md1-28
添加课程导航
创建课程文档后,您必须通过修改 mkdocs.yml 文件来更新站点导航
来源:README.md33
翻译贡献
CS自学指南支持中英文两种语言。所有内容贡献都必须包含两种语言的翻译。
翻译工作流程
来源:README.md37
翻译指南
提供翻译时
- 保持不同语言版本之间的术语一致性
- 保留格式元素,如代码块、表格和链接
- 在两种语言版本中保持相同的标题结构
- 遵循每种语言的正确排版规则
- 翻译技术术语时,如果对理解有帮助,请在括号中包含原始术语
拉取请求流程
提交贡献时
- 创建与您的更改相关的描述性分支名称
- 在单个PR中进行有重点、相关联的更改
- 清晰地描述您的PR添加或更改了什么
- 引用任何相关问题
- 准备根据审阅者的反馈进行修订
来源:README.md31-39
CS自学指南是一个社区驱动的项目,它重视
- 建设性反馈 - 在评论时保持尊重和乐于助人
- 高质量贡献 - 注重准确性和教育价值
- 包容性语言 - 使用欢迎和易于理解的语言
- 正确归属 - 尊重课程和材料的原始作者
报告问题
如果您发现错误或有建议但不想直接贡献
- 在GitHub上提出issue
- 清楚描述问题或建议
- 包含问题发生的具体页面或章节
- 如果可能,提供建议的修复方案
来源:README.md39
贡献者技术设置
要有效贡献,您需要
- 一个 GitHub 账户
- 本地安装Git
- Markdown基础知识
- Python和MkDocs(用于本地测试)
- 文本编辑器(推荐使用VS Code,并安装markdownlint插件)
设置本地开发环境
在提交前本地测试您的更改
- 安装Python和pip
- 安装所需依赖:
pip install -r requirements.txt
- 运行本地服务器:
mkdocs serve
- 在 http://:8000 查看
结论
您的贡献有助于使CS自学指南成为对所有人更好的资源。无论是添加新课程、改进现有内容还是协助翻译,您的努力都受到社区的重视和赞赏。
对于此处未解答的任何关于贡献的问题,请在GitHub上提出issue以获取澄清。