本文档涵盖了 OSSU 计算机科学课程仓库贡献者的技术基础设施和开发环境设置。它详细介绍了仓库结构、版本控制配置和本地开发环境要求。
有关网站配置和 Jekyll 设置的信息,请参阅 网站配置。有关贡献指南和流程的信息,请参阅 如何贡献。
OSSU 计算机科学仓库遵循以文档为中心、为课程维护和 Jekyll 网站生成而优化的结构。该仓库具有双重目的:通过 GitHub 提供课程内容,并在 cs.ossu.dev 上生成静态网站。
该仓库使用 Git,并带有特定的排除模式,以维护贡献者和自动化系统的清洁工作环境。
.gitignore 文件包含对常见开发工件的排除项
| 模式 | 目的 | 受影响的工具 |
|---|---|---|
.idea | JetBrains IDE 配置 | IntelliJ IDEA, PyCharm, WebStorm |
*.swp | Vim swap 文件 | Vim 编辑器 |
*.swo | Vim swap 文件(替代) | Vim 编辑器 |
.direnv/ | 目录环境配置 | direnv 工具 |
.envrc | 环境变量配置 | direnv 工具 |
来源: .gitignore1-6
OSSU 仓库在本地开发方面只需要最少的依赖项
该仓库排除了 .idea 目录,表明支持 JetBrains 开发环境,包括
配置文件会自动排除在版本控制之外。
Vim swap 文件 (*.swp, *.swo) 已被排除,支持基于 Vim 的开发工作流。该配置处理编辑会话期间生成的主要 swap 文件和备份文件。
该仓库支持 direnv 进行环境变量管理
.direnv/ 目录排除用于工具状态.envrc 文件排除用于本地环境配置这允许贡献者设置项目特定的环境变量,而不会影响共享的代码库。
该仓库使用 MIT 许可,为使用、修改和分发提供了广泛的权限。
来源: LICENSE1-22
所有课程内容均使用 Markdown 格式,并遵循一致的命名约定
README.md 文件充当目录入口点.md 扩展名该结构支持 GitHub 导航和 Jekyll 网站生成,且互不冲突。