资讯详情

如何用 GitHub Classroom 为 Web-Dev-For-Beginners 的每节课创建独立作业仓库

📅 2026/9/11 6:16:26 | 华诺云谱 👁 阅读
如何用 GitHub Classroom 为 Web-Dev-For-Beginners 的每节课创建独立作业仓库
如何用 GitHub Classroom 为 Web-Dev-For-Beginners 的每节课创建独立作业仓库【免费下载链接】Web-Dev-For-Beginners24 Lessons, 12 Weeks, Get Started as a Web Developer项目地址: https://gitcode.com/GitHub_Trending/we/Web-Dev-For-Beginners如果你要在课堂上使用 Web-Dev-For-Beginners 这套 12 周、24 节课的课程并打算用 GitHub Classroom 管理各节的作业提交核心准备工作就是「每节课一个独立仓库」。课程文档 for-teachers.md 给出的操作路径是先把课程仓库 fork 到你的组织再把每个 lesson 文件夹拆成独立仓库最后在 GitHub Classroom 中为每节课创建一个 assignment 并指向对应的 lesson 仓库——这样 GitHub Classroom 才能独立地 attach 每一个 assignment。下面按这个顺序走完整条路径。为什么每节课需要独立仓库for-teachers.md 把目标说得很直接To manage lessons and assignments per cohort, create one repository per lesson so GitHub Classroom can attach each assignment independently.也就是说按教学批次cohort管理课程时如果所有课共用一个仓库Classroom 无法把每节的 assignment 独立挂到各自的仓库上。课程共 24 节课README.md 描述为 12-week course课号与目录的对应关系列在 docs/_sidebar.md这也是后面拆仓库时的一节一目录映射依据。准备Fork 课程仓库并获取课程内容第 1 步把课程仓库 fork 到你的组织。这是 for-teachers.md 列出的第一步Fork this repo to your organizationREADME.md 的入门步骤同样从在仓库页面点击 Fork 按钮开始。第 2 步在本地获取课程内容。注意一点这个仓库包含 50 多种语言的翻译与对应图片translations/、translated_images/完整 clone 体积明显偏大。README.md 的 Multi-Language Support 一节提供了 sparse checkout 命令分 Bash/macOS/Linux 与 Windows CMD 两套用git clone --filterblob:none --sparse加git sparse-checkout set排除这两个目录后即可拿到完成课程所需的全部内容。你的目标是复制 lesson 文件夹内容翻译目录用不上按 README 给出的命令执行即可。AGENTS.md 还建议只处理内容时可用git clone --depth 1做浅克隆。把每节课拆成独立仓库for-teachers.md 给出两种做法二选一Option A创建空仓库 复制 lesson 文件夹主路径在你的组织下为每节课创建一个空仓库一共 24 个把课程仓库中对应 lesson 文件夹的内容——README.md、assignment.md、images/、solution/等子目录——复制进该仓库并提交。Option B保留 Git 历史地拆分为新仓库如果你需要保留内容来源provenancefor-teachers.md 建议 Use a Git history-preserving approach (e.g., split a folder into a new repo)。文档只给出这一方式描述没有提供具体命令需要你自己使用能保留 Git 历史的文件夹拆分方法完成。24 节课在课程仓库中的目录对应如下拆仓库时按此映射取整个子目录课号课程仓库目录课号课程仓库目录11-getting-started-lessons/1-intro-to-programming-languages135-browser-extension/2-forms-browsers-local-storage21-getting-started-lessons/2-github-basics145-browser-extension/3-background-tasks-and-performance31-getting-started-lessons/3-accessibility156-space-game/1-introduction42-js-basics/1-data-types166-space-game/2-drawing-to-canvas52-js-basics/2-functions-methods176-space-game/3-moving-elements-around62-js-basics/3-making-decisions186-space-game/4-collision-detection72-js-basics/4-arrays-loops196-space-game/5-keeping-score83-terrarium/1-intro-to-html206-space-game/6-end-condition93-terrarium/2-intro-to-css217-bank-project/1-template-route103-terrarium/3-intro-to-DOM-and-closures227-bank-project/2-forms114-typing-game/typing-game237-bank-project/3-data125-browser-extension/1-about-browsers247-bank-project/4-state-management命名上for-teachers.md 建议仓库名采用lesson-01-intro、lesson-02-html这类「编号 主题」的格式方便在 Classroom 里按课号对应。在 GitHub Classroom 中为每节课创建作业拆分完成后在 GitHub Classroom 中为每节课创建一个 assignment并把它指向对应的 lesson 仓库做到一一映射。for-teachers.md 给出的推荐设置Repository visibility设为 private学生作业Starter code使用对应 lesson 仓库默认分支的代码模板为 quiz 和 submission 添加 issue 和 pull request 模板自动评分如果某节课包含测试可选配 autograding 和 testsOptionally configure autograding and tests if your lessons include them。需要说明的是文档对这一段只写到「操作路径 推荐设置」的粒度Classroom 控制台内的具体界面操作没有展开读者按 Classroom 自身的流程完成即可。仓库命名、标签与按学期版本化for-teachers.md 的 Conventions 与 Best practices 部分还给出几项有助于长期运营的建议标签Labelsquiz、assignment、needs-review、late、resubmission用于区分提交类型与审阅状态按批次打版本tags/releases per cohort例如v2025-term1同时按学期版本化内容发布后冻结 lesson 仓库Version your content per term and freeze lesson repos after publishing——这意味着下一学期若更新课程内容应在冻结副本之外修改Issue 清单多步骤的 quiz/assignment 在 Issue 中使用 checklist课堂规范添加 CONTRIBUTING.md 和 CODE_OF_CONDUCT.md 设定课堂规范课程仓库根目录已包含这两个文件Git/GitHub 入门铺垫提供 Git/GitHub 基础、Issue 与 PR 的入门课。课程第 2 节 Git-Basics/README.md 本身讲的就是 Git 基础可直接复用。限制与已知问题不要把仓库放在同步目录里。for-teachers.md 的 Tip 明确避免把仓库存放在 OneDrive/Google Drive 等同步文件夹中否则在 Windows 上会产生 Git 冲突。文档覆盖范围。仓库中关于 GitHub Classroom 集成的说明仅止于本文引用的操作路径与推荐设置没有提供 Classroom 控制台截图、自动评分的具体配置或保留历史拆分的具体命令按 Option B 操作时需要自行解决历史保留的拆分问题。替代路径不用 GitHub Classroom 直接跑课程如果不打算用 GitHub Classroomfor-teachers.md 的 Use the repo directly 一节给出直接基于本仓库开课的方式可作为备选同步/线上形式Zoom/Teams导师带 warmup、用 breakout rooms 做 quiz公告 quiz 时间段学生以 GitHub Issue 提交答案协作类作业在公开的 lesson 仓库上工作并开 pull request私有/异步形式学生把每节课 fork 到自己名下的 private 仓库并把你加为 collaboratorquiz 通过 Issue、作业通过 PR 提交到你的课堂仓库或各自的私有 fork。完成全部配置后按 for-teachers.md 的说法最终状态是组织内每节课各有一个独立仓库GitHub Classroom 中每个 assignment 独立指向对应的 lesson 仓库。如需调整课程内容或修复问题可以在课程仓库开 Issue或在 Teacher Corner 发起讨论见 for-teachers.md 的 Feedback and support 一节。【免费下载链接】Web-Dev-For-Beginners24 Lessons, 12 Weeks, Get Started as a Web Developer项目地址: https://gitcode.com/GitHub_Trending/we/Web-Dev-For-Beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。