菜单

技术基础设施

相关源文件

本文档介绍了驱动 OSSU 计算机科学课程网站和仓库的技术基础设施。这包括基于 Jekyll 的静态站点生成、域名配置以及启用课程作为公共网站交付的开发环境设置。

有关详细的课程内容和结构,请参阅 课程结构。有关社区支持系统,请参阅 社区与支持

基础设施概览

OSSU 计算机科学课程以 GitHub Pages 托管的静态网站形式运行,该网站使用 Jekyll 构建。该技术基础设施旨在实现简洁性、可维护性和开源协作。

来源: CNAME1 _config.yml1-9 .gitignore1-6

网站配置架构

网站基础设施围绕 Jekyll 的静态站点生成,配置复杂度极低。该系统将 Markdown 课程内容转化为可导航的网站。

来源: _config.yml1-9 CNAME1

开发环境配置

开发设置使用标准的 Git ignore 模式来排除常见的开发工件,同时支持多种开发环境和 IDE。

配置文件目的关键模式
.gitignore排除开发文件.idea, *.swp, *.swo, .direnv/, .envrc
_config.ymlJekyll 站点配置主题、导航、包含项
CNAME自定义域名映射cs.ossu.dev

.gitignore 配置支持多种开发环境

  • IntelliJ IDEA:排除 JetBrains IDE 用户的 .idea 目录
  • Vim/Neovim:排除 *.swp*.swo 交换文件
  • Direnv:排除用于环境变量管理的 .direnv/.envrc

来源: .gitignore1-6

静态站点生成流程

通过 Jekyll 的构建流水线与 GitHub Pages 集成,课程内容经过自动转换,从 Markdown 变为 Web 可用的 HTML。

来源: _config.yml2-8

域名和托管基础设施

cs.ossu.dev 域名为课程提供了专业、易记的 URL,同时利用 GitHub Pages 的全球 CDN 基础设施实现可靠的内容交付。

域名配置

  • 自定义域名: cs.ossu.dev (CNAME1)
  • 托管:GitHub Pages 自动部署
  • SSL/TLS:GitHub Pages 自动提供
  • CDN:通过 GitHub 的基础设施提供全球内容分发

主题配置

有关详细的网站配置信息,请参阅 网站配置。有关开发环境设置详情,请参阅 开发设置

来源: CNAME1 _config.yml1-9 .gitignore1-6