tech-interview-handbook 如何在本地启动 Docusaurus 站点并完成构建与 gh-pages 部署

发布时间:2026/10/27 3:58:03

tech-interview-handbook 如何在本地启动 Docusaurus 站点并完成构建与 gh-pages 部署 tech-interview-handbook 如何在本地启动 Docusaurus 站点并完成构建与 gh-pages 部署【免费下载链接】tech-interview-handbookCurated coding interview preparation materials for busy software engineers项目地址: https://gitcode.com/GitHub_Trending/te/tech-interview-handbook这篇文章解决一个具体任务把 tech-interview-handbook 仓库中的文档站点tih/website基于 Docusaurus 2 构建在本地跑起来生成生产构建并推送到gh-pages分支。整个流程依赖仓库的 monorepo 工具链 Vite全局 CLI 为vp所有命令都在仓库根目录或其子目录内执行。准备条件确认仓库结构与工具链这是一个 Vite monorepo工作区声明在 pnpm-workspace.yaml 和根 package.json 中包含apps/*与packages/*。本文只涉及其中的网站包 apps/websiteapps/website/package.json 中该包名为tih/website依赖docusaurus/core、docusaurus/preset-classic等^2.4.3版本脚本包括start/devdocusaurus start、builddocusaurus build和deploydocusaurus deploy。根 package.json 声明了enginesnode: 25.8.1、pnpm: 10.32.1且packageManager为pnpm10.32.1。Vite 通过packageManager字段自动检测并接管底层包管理器因此不要直接使用 pnpm、npm 或 Yarn见 AGENTS.md 的 Common Pitfalls 一节。AGENTS.md 还列出了两条 agent 检查项拉取远端变更后先运行vp install完成改动后用vp check和vp test校验。本地只读浏览站点内容时不涉及这两步。第一步安装依赖在仓库根目录执行vp install按 apps/website/README.mdVite 通过vp install统一安装整个 monorepo 的依赖这一步会覆盖apps/website所需的全部 Docusaurus 依赖。一个容易踩的坑AGENTS.md 明确列出Vite 的内置命令vp dev、vp build等永远执行 Vite 自带工具而不是package.json里同名的脚本。本仓库根目录自定义了dev脚本所以启动网站开发服务器必须用vp run dev而不是vp dev。第二步本地启动开发服务器仍然在仓库根目录执行vp run dev这条命令实际执行根 package.json 中的dev脚本vp run --filter tih/website... dev即只针对tih/website及其依赖包运行其dev脚本最终调用docusaurus start。启动后的表现与验证方式以 apps/website/README.md 为准命令会启动本地开发服务器并打开一个浏览器窗口对 JavaScript 和 Markdown 文件的大部分修改会即时反映无需重启服务器。文档站点的文档内容目录为apps/website/contents由 docusaurus.config.js 中docs.path: ./contents指定修改其中的 Markdown 文件即可在浏览器中实时看到变化这是本地开发阶段最直接的结果验证。第三步构建生产静态站点在仓库根目录执行vp run --filter tih/website build该命令执行tih/website包的build脚本docusaurus build将静态内容生成到build目录见 apps/website/README.md 的 Build 一节。构建产物是纯静态文件可以用任何静态内容托管服务承载如果你只是想分发或部署到 GitHub 之外的地方构建到这一步就已足够。第四步部署到 gh-pages 分支文档给出的部署路径针对 GitHub Pages 托管先切换到网站包目录再带两个环境变量执行部署脚本cd apps/website GIT_USERYour GitHub username USE_SSH1 vp run deploy其中Your GitHub username是占位符替换为你自己的 GitHub 用户名vp run deploy执行的是 apps/website/package.json 中的deploy脚本docusaurus deploy。执行前需要明确这条命令的副作用它会构建网站并向远端仓库的gh-pages分支推送内容USE_SSH1表示通过 SSH 推送因此要求当前机器具备对目标仓库的推送权限且本地 Git 的 SSH 密钥已配置可用。部署的目标仓库由 docusaurus.config.js 中的三项配置决定organizationName: yangshunprojectName: tech-interview-handbookurl: https://www.techinterviewhandbook.org、baseUrl: /即本仓库默认部署到yangshun/tech-interview-handbook的gh-pages分支。如果你在自己的 fork 上操作需要把这两个值改成自己的账号与仓库名后再执行部署。部署完成后的结果就是 README 描述的效果网站内容被推送到gh-pages分支。仓库 apps/website/static/CNAME 中写有域名techinterviewhandbook.org表示该gh-pages站点绑定自定义域名若部署到 fork应留意此文件会导致站点指向他人域名可自行决定如何处理。apps/website/static/_redirects 则声明了一批旧路径到新路径的重定向规则随构建产物一并生效用于保证旧链接如/cheatsheet跳转后仍可访问。验证清单按文档给出的信息各阶段的成功判据是阶段命令文档给出的成功结果本地开发vp run dev仓库根目录浏览器窗口打开修改 JS/Markdown 即时生效构建vp run --filter tih/website build生成build目录内含可托管的静态内容部署GIT_USER用户名 USE_SSH1 vp run deployapps/website目录网站被构建并推送到gh-pages分支如果命令行为与预期不符可用vp help查看全部命令列表、vp command --help查看单个命令说明、vp --version检查各工具版本见 AGENTS.md。另外注意 AGENTS.md 中的限制不要尝试运行vp vitest、vp oxlint这类不存在的命令也不要直接安装 Vitest、Oxlint、Oxfmt 或 tsdown这些工具都由 Vite 统一封装。【免费下载链接】tech-interview-handbookCurated coding interview preparation materials for busy software engineers项目地址: https://gitcode.com/GitHub_Trending/te/tech-interview-handbook创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/26 4:50:43

用C#封装ADB命令,打造高效Android设备管理工具

简介:这是一款基于C#语言实现的Android ADB图形化管理工具,面向移动开发者、测试人员及C#初学者,用于解决命令行ADB操作不便的问题。工具覆盖设备枚举、应用安装与卸载、文件传输、状态查看等常见调试需求,并以Windows Forms或WPF…

2026/10/26 9:10:09

Crawl4AI从入门到精通:环境搭建与异步网页抓取实战

Crawl4AI 这个库,我第一次接触是在研究 RAG 数据管道的时候。当时团队急需一个能从网页里稳定抽取正文、并且直接输出干净 Markdown 的爬虫方案,试了好几个工具都不太顺手。直到在 GitHub 上翻到 Crawl4AI,看了一晚上文档,第二天就…

2026/10/26 21:40:14

论文AI率过高怎么办?从检测原理到降AI率的四步实战指南

最近后台好多同学问我:“师兄,我的论文明明是自己一个字一个字写出来的,只是在润色的时候用了一下AI,结果查出来AI率80%,怎么办?”这话我最近听了不下二十遍。很多同学把AI当成辅助工具用,结果交…

2026/10/27 3:57:53

视频抽帧与数据集划分实战:以HMDB51为例的完整流程与避坑指南

视频数据集转帧序列这件事,说起来简单,真动手做的时候坑比想象中多得多。我前后在几个动作识别项目里反复折腾过这套流程,从最早手工用脚本一帧帧抠,到后来写成固定管线,中间踩过的坑足够写满一页纸。这次拿HMDB51这个…

2026/10/27 3:57:53

Presente:数字时代的在场感与社交新趋势

1. Presente 是什么?Presente 是西班牙语中"礼物"的意思,但在互联网语境下,它已经演变成一个新兴的网络热词。这个词最近在社交媒体上频繁出现,特别是在年轻人群体中广泛传播。它不仅仅指代传统意义上的实物礼物&#x…

2026/10/27 3:57:53

CISP认证备考指南:核心价值与高效策略

1. CISP认证的核心价值与行业定位CISP(Certified Information Security Professional)作为国内信息安全领域最具权威性的专业认证之一,其含金量主要体现在三个维度:首先,这是国家信息安全测评中心颁发的国家级证书&…

2026/10/27 3:57:53

Qt集成Tesseract:Windows 64位离线票据OCR实战

简介:面向在 Windows 64 位平台使用 Qt 集成 OCR 能力的开发者,这套 Tesseract 编译产物可省去自行搭建编译环境的繁琐,适合桌面端文字识别、扫描件转文本与图像内容提取等项目的二次开发。压缩包共 916 个文件,大小约 39.32MB&am…

2026/10/27 3:57:53

PSO优化深度极限学习机在图像分类中的应用

1. 项目概述:当粒子群遇上深度极限学习机在机器学习领域,参数优化一直是个让人头疼的问题。传统梯度下降法容易陷入局部最优,而手动调参又像大海捞针。最近我在一个图像分类项目中发现,将粒子群优化算法(PSO&#xff0…

2026/10/27 3:52:53

HDFS数据块大小优化:从原理到实践

1. HDFS数据块大小的核心设计逻辑在分布式文件系统中,数据块大小从来都不是随意设定的数字。HDFS默认的128MB块大小(Hadoop 2.x及以后版本)背后是一套精密的工程权衡体系。这个数值的确定经历了从最早CDH版本的64MB,到后来行业普遍…

2026/10/26 0:20:20

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/26 1:53:47

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/27 0:59:21

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/27 0:02:28

WorkBuddy_新建任务与工作模式19_“模式选错”的典型代价

“模式选错”的典型代价 摘要 在软件工程中,设计模式、架构模式、并发模式乃至团队协作模式的选择,往往在项目早期就决定了后续的开发效率和维护成本。本文通过多个真实场景,剖析“模式选错”带来的典型代价——包括返工成本、技术债务累积、…

2026/10/27 0:02:28

WorkBuddy_新建任务与工作模式20_新手推荐路径

新手推荐路径 摘要 在 AI 辅助开发工具快速普及的今天,新手面对最多的困惑往往不是"工具够不够强",而是"我该从哪一步开始用"。本文提出一条经过实践验证的三阶段学习路径:先从 Ask(问答式交互)起…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑