一份自动部署VuePress到Github Pages的脚本

如题,脚本如下:

deploy.sh 复制代码
#!/bin/bash

# 脚本只要发生错误,就终止执行。
set -e

# 生成静态文件
npm run build

# 判读是否存在 .git目录
if [ -d .git/ ];then
echo '已经是一个git仓库,需要删除已有pages分支后重新拉取新分支'
# 删除已有分支,避免代码合并冲突
git branch -D pages
# 添加工作区所有变化到暂存区
git add -A
# 将暂存区里的改动提交到本地的版本库
git commit -m 'add'

# 如果不存在 .git 证明不是git仓库,需要初始化git仓库
else
echo '初始化git仓库'
# 初始化git仓库
git init
# 添加工作区所有变化到暂存区
git add -A
# 将暂存区里的改动提交到本地的版本库
git commit -m 'add'
# 命名当前分支
git branch -M master
# 关联远端仓库
git remote add origin [[email protected]:xxx] #自己的代码仓库
fi

## 将更新推送到远程主分支
git push --set-upstream -f origin master

# 进入pages分支
git checkout -b pages

# 将dist移动到根目录
cp -rf docs/.vuepress/dist ./dist
# 删除原有的docs文件夹
rm -rf docs/
# 将dist重命名
mv ./dist/ ./docs/

# 提交更新
git add -A
git commit -m 'deploy'
git push --set-upstream -f origin pages

# 回到主分支
git checkout master

新建VuePress文档

参考VuePress快速上手

1、创建并进入一个新目录

bash 复制代码
mkdir vuepress-starter && cd vuepress-starter

2、使用你喜欢的包管理器进行初始化

csharp 复制代码
yarn init # npm init

3、将 VuePress 安装为本地依赖

csharp 复制代码
yarn add -D vuepress # npm install -D vuepress

4、创建你的第一篇文档

bash 复制代码
mkdir docs && echo '# Hello VuePress' > docs/README.md

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

json 复制代码
{
  "scripts": {
    "dev": "vuepress dev docs",
    "build": "vuepress build docs"
  }
}

6、在本地启动服务器

arduino 复制代码
yarn dev # npm run dev

以上命令可以新建一个基础VuePress文档,并在会在 http://localhost:8080 (opens new window)启动一个热重载的开发服务器。

新建github仓库

添加项目配置

1、配置部署站点的基础路径 此处应为github 仓库名更多配置

添加脚本

1、在VuePress文档中新建deploy.sh(复制最上边脚本)

2、复制github仓库地址

3、修改脚本远端仓库地址

4、添加忽略文件.gitignore

部署文档

在根目录执行 sh deploy.sh 命令

配置github

1、进入Setting页

2、选择分支及文档目录

3、刷新页面号,获取站点URL

4、复制URL,在浏览器窗口打开,即可看到部署好的博客站点

注意:

生成站点地址会有几分钟的延迟,若刷新页面没有出现站点地址,请耐心等待几分钟

文档只可放在根目录(/)或(/docs)目录下:

参考文档

Bash 脚本 set 命令教程

Shell 教程

相关推荐
小希爸爸11 分钟前
1、中医基础入门和养生
前端·后端
三道杠卷胡33 分钟前
【AI News | 20250424】每日AI进展
人工智能·pytorch·python·语言模型·github
神仙别闹1 小时前
基于VUE+Node.JS实现(Web)学生组队网站
前端·vue.js·node.js
下雨的Jim1 小时前
前端速成之——Script
前端·笔记
Captaincc2 小时前
使用 Copilot 代理模式构建着陆页
前端·ai编程·github copilot
油泼辣子多加2 小时前
2025年04月24日Github流行趋势
github
zyk_5202 小时前
前端渲染pdf文件解决方案-pdf.js
前端·javascript·pdf
Apifox.2 小时前
Apifox 4月更新|Apifox在线文档支持LLMs.txt、评论支持使用@提及成员、支持为团队配置「IP 允许访问名单」
前端·人工智能·后端·ai·ai编程
划水不带桨2 小时前
大数据去重
前端
沉迷...2 小时前
手动实现legend 与 echarts图交互 通过js事件实现图标某项的高亮 显示与隐藏
前端·javascript·echarts