说明

最近想把常用的一些干货知识点都集中起来,方便发布和查找。相当于创建一个自己的知识库,我就叫它Java技术文档。虽然博客写文档也挺方便,但是在于文档的集中阅读和管理方面还是不够简洁和快速。此处就以Vue官方文档举例,它就是用的自家技术vuepress创建的。

关于vuepress

https://www.vuepress.cn/

关于github pages

Github Pages其实等于jekyll engine + static web server, 方法1其实是利用jekyll搭建blog, 这两个功能都用到了。

实现效果


实现步骤

本地搭建

  1. 创建并进入目录
// 文件名自定义
mkdir vuepress-starter && cd vuepress-starter
  1. 使用你喜欢的包管理器进行初始化
yarn init # npm init
  1. 将 VuePress 安装为本地依赖
yarn add -D vuepress # npm install -D vuepress

4.创建你的第一篇文档,VuePress 会以 docs 为文档根目录,所以这个 README.md 相当于主页:

mkdir docs && echo '# Hello VuePress' > docs/README.md

5.在 package.json 中添加一些 scripts

{
"scripts": {
"docs:dev": "vuepress dev docs",
"docs:build": "vuepress build docs"
}
}
  1. 在本地启动服务器
yarn docs:dev # npm run docs:dev

VuePress 会在 http://localhost:8080 (opens new window) 启动一个热重载的开发服务器。

使用现有主题模板搭建

这里我选择的是开箱即用的主题:vuepress-theme-vdoing
这个主题基本上实现了常用的文档功能,例如:目录、搜索、分类、标签等自定义功能。只需要将里面的内容换成自己的就行,随便定制很方便。

使用步骤如下:

# clone the project
git clone https://github.com/xugaoyi/vuepress-theme-vdoing.git # enter the project directory
cd vuepress-theme-vdoing # install dependency
npm install # or yarn install # develop
npm run dev # or yarn dev

利用github pages部署

既然本地我们已经可以搭建了,下面就可以将我们的本地代码打包上传了。

创建github仓库

由于要利用github去实现在线部署,所以需要创建一个仓库,这里假设为java-it-docs,对应,我们需要在 config.js 添加一个 base 路径配置:/java-it-docs/

添加打包脚本

在项目根目录创建deploy.sh脚本文件,内容如下:

#!/usr/bin/env sh

# 确保脚本抛出遇到的错误
set -e # 生成静态文件
npm run docs:build # 进入生成的文件夹
cd docs/.vuepress/dist git init
git add -A
git commit -m 'deploy' # 如果发布到 https://<USERNAME>.github.io/<REPO>
git push -f git@github.com:mudfish/java-it-docs.git master:gh-pages cd -

打包push

然后命令行切换到java-it-docs 目录下,执行 sh deploy.sh,就会开始构建,然后提交到远程仓库,注意这里提交到了 gh-pages 分支,我们查看下对应仓库分支的代码:

我们可以在仓库的 Settings -> Pages 中看到最后的地址:

接下来就是访问这个地址就行了:

参考文档

https://github.com/mqyqingfeng/Blog/issues/235

VuePress + Github Pages 搭建文档博客的更多相关文章

  1. Hexo + Github Pages搭建的个人博客

    这个不算是新手的搭建流程,如果你恰巧看见这篇文章,希望你已经安装好node.git等软件,因为第一步的环境搭建准备并没有详写,默认都会了.希望能解决你的问题. 步骤: 一. 搭建环境准备 二.安装he ...

  2. 使用Hexo + Github Pages搭建个人独立博客

    使用Hexo + Github Pages搭建个人独立博客 https://linghucong.js.org/2016/04/15/2016-04-15-hexo-github-pages-blog ...

  3. 1小时搞定vuepress快速制作vue文档/博客+免费部署预览

    先来一下演示效果.和vue的官方文档几乎是一致的,页面内容都可自定义. 此教程部署后的效果预览. 在你跟着教程搭建好项目之后,你会收获: 快速搭建一个文档/博客,后期只需要修改markdown内容和导 ...

  4. 如何使用 GitHub Pages 维护自己的博客

    目录 前置知识 实际操作 声明 本文地址:如何使用 GitHub Pages 维护自己的博客 前置知识 首先,你应该知道如何用 Hexo 在本地搭建一个博客系统,具体见 Hexo. 其次,我们如果想使 ...

  5. 让搭建在 Github Pages 上的 Hexo 博客可以被 Google 搜索到

    title: 让搭建在Github Pages上的Hexo博客可以被Google搜索到 date: 2019-05-30 23:35:44 tags: 配置 --- 准备工作 搭建好的博客 npm & ...

  6. github+hexo搭建自己的博客网站(六)进阶配置(搜索引擎收录,优化你的url)

    详细的可以查看hexo博客的演示:https://saucxs.github.io/ 绑定了域名: http://www.chengxinsong.cn hexo+github博客网站源码(可以clo ...

  7. 使用GitHub+hexo搭建个人独立博客

    前言 使用github pages服务搭建博客的好处有: 全是静态文件,访问速度快: 免费方便,不用花一分钱就可以搭建一个自由的个人博客,不需要服务器不需要后台: 可以随意绑定自己的域名,不仔细看的话 ...

  8. 用mkdocs在gitee码云上建立一个简单的文档博客

    利用mkdocs建立简单的文档博客 一.概述 MkDocs 是一个用于创建项目文档的 快速, 简单 , 完美华丽 的静态站点生成器. 文档源码使用 Markdown 来撰写, 用一个 YAML 文件作 ...

  9. github+hexo搭建自己的博客网站(七)注意事项(避免read.me,CNAME文件的覆盖,手动改github page的域名)

    详细的可以查看hexo博客的演示:https://saucxs.github.io/ 绑定域名可以查看:http://www.chengxinsong.cn 可以查看在github上生成的静态文件(如 ...

  10. 使用Github Pages和Hexo构建博客

    Github Pages可以创建免费的静态站点,支持自带主题.支持自制页面等,并且可以使用Jekyll或者Hexo等静态博客框架进行管理. 独立博客是博客园等博客平台之外的一个良好补充,相比使用虚拟主 ...

随机推荐

  1. GoMusic-歌单迁移工具网站 一键迁移网易云/QQ音乐歌单至 Apple/Youtube/Spotify Music

    GoMusic是什么: GoMusic是一个在线歌单迁移工具网站,帮助用户一键迁移网易云/QQ音乐歌单至 Apple/Youtube/Spotify Music,直接输入歌单链接,复制查询结果,打开 ...

  2. 百度网盘(百度云)SVIP超级会员共享账号每日更新(2023.11.20)

    百度网盘会员账号共享(11.20更新) 账号:zqv29268 密码:7003wayb 账号:rpz75364 密码:riyk1648 账号:0580quqn 密码:148hxhe 账号:132620 ...

  3. TiKV占用内存超过的解决过程

    TiKV占用内存超过的解决过程 背景 为了后去TiDB的极限数据. 晚上在每台服务器上面增加了多个TiKV的节点. 主要方式为: 每个NVME的硬盘增加两个TiKV的进程. 这样每个服务器两个磁盘, ...

  4. [转帖]Load Base Split

    https://docs.pingcap.com/zh/tidb/stable/configure-load-base-split#load-base-split Load Base Split 是 ...

  5. 在k8s中的控制器和部署服务-ReplicationController和ReplicaSet

    pod 代表了 k8s 中的基本部署单元,但是在实际应用场景中,服务不可能是单个pod运行的,否则会出现"单点".在 k8s 中对 pod 的托管部署,专门抽象成了单独的资源.其中 ...

  6. TienChin-课程管理-展示课程列表

    配置按钮权限 博主这里就不贴SQL了,自行手动添加一下吧. 更改表结构 ALTER TABLE `tienchin_course` MODIFY COLUMN `info` varchar(255) ...

  7. SqlSugar入门

    SqlSugar入门 创建对象 你可以使用 SqlSugarClient (new模式)或者 SqlSugarScope (单例) 对数据库进行增.删.查.改等功能 注意:除了名字和使用模式不同,功能 ...

  8. paddleNLP-BUG和一些细节记录【一】

    1.TypeError: isfile() takes 1 positional argument but 2 were given File "/root/miniconda3/envs/ ...

  9. 纪念JDBC

    技术总是在不断更新变化的,尤其是在IT编程领域. 有时候我们理所当然的用着现成的框架,以至于用的太过于顺手,更要时不时的骂一句: 什么垃圾框架?我家狗都不会用! 如果那些被拍死在沙滩的"前浪 ...

  10. 面试官:你能简单聊聊MyBatis执行流程

    本文分享自华为云社区<面试必问|聊聊MyBatis执行流程?>,作者: 冰 河. MyBatis源码解析 大家应该都知道Mybatis源码也是对Jbdc的再一次封装,不管怎么进行包装,还是 ...