# 简言
手把手教程参考:itclanCoder大佬 (opens new window)
# 安装环境准备
# Windows 系统中安装 Yarn
官网 (opens new window)提供了三种安装方法。下面记录我选择第一种方法安装的步骤:
下载安装程序
这将为您提供一个.msi
文件,该文件在运行时将引导您完成在Windows上安装Yarn的操作。
如果使用安装该程序,您首先需要安装 Node.js (opens new window)。
# 检查安装
将yarn-1.22.5.msi下载后直接点击安装,自动会将yarn命令对应的路径添加至path
所在的环境变量中。然后打开CMD
命令行窗口,输入yarn -v
可以查看到当前安装的yarn
的版本:
yarn --version
# 开始项目
创建并进入一个新目录:
mkdir vuepress && cd vuepress
在创建的vuepress文件夹下打开Git终端(win下为命令行):
# 初始化项目,请根据实际情况自行填写相应提示内容,或者简单的一路回车就行,以后也是可以修改的
yarn init
# 将 VuePress 作为一个本地依赖安装
yarn add -D vuepress
# 新建一个 docs 文件夹
mkdir docs
# 新建一个 markdown 文件
echo '# Hello VuePress!' > docs/README.md
此时项目的目录结构如下:
.
├─ docs
│ └─ README.md
├─ node_modules
├─ package.json
└─ yarn.lock
接着,在 package.json
里添加如下脚本:
{
"name": "KingPan",
"version": "1.0.0",
"main": "index.js",
"author": "KingPan",
"license": "MIT",
"devDependencies": {
"vuepress": "^1.8.2"
},
"scripts": {
"docs:dev": "vuepress dev docs",
"docs:build": "vuepress build docs"
}
}
然后在本地启动服务器:
yarn docs:dev
终端输出:> VuePress dev server listening at http://localhost:8080/
就说明运行成功了,这时在浏览里访问终端输出的地址 http://localhost:8080 (opens new window)就可以看到“Hello VuePress!”了。
进入docs文件夹中使用mkdir命令创建.vuepress文件夹,注意这个文件夹的名字时固定的,不要随便改变:
cd docs
mkdir .vuepress
# vuepress 热更新失效解决
由于接下来配置config.js和md文件较为频繁,不可能每次修改都要 yarn dev重新启动服务器吧。所以提前把依赖安装配置好,方便后面能够实时编译。
# 提供两种方案修改
第一种 安装依赖 watchpack
npm install -D watchpack
这种方法 不能更新config.js 的一些配置和首页的README.md文件,如果修改后,还是必须重新运行才能更新。
第二种 修改package.json中的配置 官网上是这样的
"dev": "vuepress dev docs"
改为这样的
"dev": "vuepress dev docs --temp .temp"
这种方法是通过在编译的时候生成一个临时的 .temp, 唯一的缺点,在目录下会多一个文件夹,如果使用git,可以在.gitignore种加入
...
.temp
这样就可以排除了。
# 页面具体内容配置
# 基本配置
要让你的网站显示内容, 就需要进行配置, 需要在.vuepress文件夹下新建一个总的配置文件config.js, 这个文件的名字是固定的,即.vuepress/config.js,它导出一个 JavaScript 对象,使用的是Commonjs文件导入导出的规范。
进入.vuepress文件夹,创建config.js文件:
cd .vuepress
touch config.js
config.js最基础的配置文件内容如下所示:
module.exports = {
title: 'itclanCoder网站',
description: 'itclanCoder的网站,专注前端技术栈分享'
}
# 设置封面启动页
有时候,当别人进入您的网站时,设置一个启动页,这样显得挺友好,而不是一上来,就放一堆的内容,看得令人眼花缭乱
在vuepress默认的主题中提供了一个首页(Homepage)的布局 (用于您网站的主页)。如果您想要使用它,需要在您项目docs/README.md中的YAML front matter指定 home: true,如下所示:
home: true
heroImage: /images/itclancoder.jpeg
heroText: 向阳榆木の阅览室
tagline: 书以启智,技于谋生,活出斜杠
actionText: 快速开始吧 →
actionLink: /latestarticle/
features:
- title: 读书
details: 随笔川迹,文以载道,虚心学习,自省自知,多读一页书,就少一分无知,多一分智慧
- title: 技术
details: 用心记录技术,走心分享,始于前端,不止于前端,励志成为一名优秀的全栈工程师,真正的实现码中致富
- title: 生活
details: 无分享,不生活,一个具有情怀的技匠,路上正追逐斜杠青年的践行者
footer: MIT Licensed | Copyright © 2020-present KingPan
当然,您现在看到,网站上有图片没有正常的显示,那是因为没有添加图片造成的,网站上一些图片,logo 等静态资源可以放到.vuepress目录下的一个public目录下的
这个public是自己创建的,vuepress并不会自动帮你生成,在/.vuepress/public/images中放入您想要的图片就可以了的
警告
⒈ 这个 public 目录文件夹的名称是固定的,就像docs目录下的config.js一样,名称是固定的
⒉ 在引入图片时,直接/所要引入的图片路径目录就行,不用带public,它会自动的去找public下的静态资源文件
⒊ vuepress中所有的图片文件名,以及目录名不要带有中文,应该使用英文状态下的格式,否则编译就报错,在您以后用 md 写文章时,同样引入图片时,图片的后缀名都不能带有中文字符
# 配置导航栏
导航栏中有页面标题、搜索框、 导航栏链接、多语言切换、仓库链接,它们都是可以直接通过配置出来的,在 config.js 中添加如下配置
// .vuepress/config.js
module.exports = {
title: '向阳榆木の阅览室',
description: '欢迎来到我的博客家园',
themeConfig: {
nav: [
{ text: '首页', link: '/' },
{ text: '前端', link: '/fontend/' },
{ text: '后端', link: '/rearend/' },
{
text: '友情链接',
items: [
{ text: '向阳榆木', link: 'https://www.xyym.cf' },
{ text: '偏偏💖雨季', link: 'https://lllzxqq.gitee.io' },
{ text: '浪子游方', link: 'https://yumuxy.gitee.io' }
]
},
{ text: '面试', link: '/interview/' },
{ text: '关于', link: '/about/' },
{ text: 'Github', link: 'https://github.com/dldgpc' }
]
}
}
警告
路由后面的/fontend/后面的反斜杠不能少,否则依旧会是 404 的
- 导航栏配置
nav
,此配置主要用于配置导航栏的链接,例如以上首页的link为"/",默认是根目录(docs目录)下的README.md。 - "/fontend/"链接到根目录docs下的fontend文件夹下的README.md文件。
- "/rearend/"链接到根目录docs下的rearend文件夹下的README.md文件。
- "/interview/"链接到根目录docs下的interview文件夹下的README.md文件。
- "/about/"链接到根目录docs下的about文件夹下的README.md文件。
在docs目录下新建fontend,rearend,interview,about等文件夹,并在各文件夹下面创建README.md文件,批量创建命令如下:
mkdir -p ./{fontend,rearend,interview,about}
echo "# fontend Docs" > fontend/README.md
echo "# rearend Docs" > rearend/README.md
echo "# interview Docs" > interview/README.md
echo "# about Docs" > about/README.md
以上首先创建几个子文件夹,然后在各目录中创建README.md文件。
# 了解目录结构
此时的目录树结构如下:
├─package.json
├─docs
| ├─README.md
| ├─rearend // 与.vuepress同级的每一个文件夹都是一个nav,以后写文章都是在这里里面写
| | └README.md
| ├─interview
| | └README.md
| ├─fontend
| | └README.md
| ├─about
| | └README.md
| ├─.vuepress // 所有与导航侧边栏vuepress相关配置都会在这个文件夹里面
| | ├─config.js
| | ├─public // 公共静态资源,logo,自定义样式等
| | | ├─img
| | | | ├─psb.jpg
| | | | └logo.png
请留意目录名的大写。
docs/.vuepress
: 用于存放全局的配置、组件、静态资源等。docs/.vuepress/components
: 该目录中的 Vue 组件将会被自动注册为全局组件。docs/.vuepress/theme
: 用于存放本地主题。docs/.vuepress/styles
: 用于存放样式相关的文件。docs/.vuepress/styles/index.styl
: 将会被自动应用的全局样式文件,会生成在最终的 CSS 文件结尾,具有比默认样式更高的优先级。docs/.vuepress/styles/palette.styl
: 用于重写默认颜色常量,或者设置新的 stylus 颜色常量。docs/.vuepress/public
: 静态资源目录。docs/.vuepress/templates
: 存储 HTML 模板文件。docs/.vuepress/templates/dev.html
: 用于开发环境的 HTML 模板文件。docs/.vuepress/templates/ssr.html
: 构建时基于 Vue SSR 的 HTML 模板文件。docs/.vuepress/config.js
: 配置文件的入口文件,也可以是YML
或toml
。docs/.vuepress/enhanceApp.js
: 客户端应用的增强。
注意:当你想要去自定义
templates/ssr.html
或templates/dev.html
时,最好基于 默认的模板文件 (opens new window) 来修改,否则可能会导致构建出错。
其中导航栏的链接分为三种:
- 一级 nav,链接
- 二级下拉菜单
- 带标题的多级分类菜单
一级 nav,直接带路由即可:
themeConfig: {
nav: [
{ text: '首页', link: '/' },
{ text: '前端', link: '/fontend/' },
{ text: '后端', link: '/rearend/' },
]
}
如果想 nav 二级下拉菜单,如下配置,link的属性值带有链接,会直接是链接,若不是那就是路由,在vuepress中提供了一个items属性,配置二级导航如下所示:
themeConfig:{
nav: [{text: "主页", link: "/" },
{ text: "前端",
items: [
{ text: "html", link:"/fontend/html/"},
{ text: "css", link:"/font/css/"},
]
}
],
}
如果想要二级菜单带有标题,分类的菜单形式,如下配置:
themeConfig: {
nav: [
{ text: '首页', link: '/' },
{ text: '前端', link: '/fontend/' },
{ text: '后端', link: '/rearend/' },
{
text: '超级入口',
items: [
{
text:"个人主题",
items:[
{ text: '向阳榆木', link: 'https://www.xyym.cf' },
{ text: '偏偏💖雨季', link: 'https://lllzxqq.gitee.io' },
{ text: '浪子游方', link: 'https://yumuxy.gitee.io' }
]
},
{
text:"大佬博客",
items:[
{ text: 'Java 全栈知识体系', link: 'https://www.pdai.tech' },
{ text: 'itclanCoder', link: 'https://coder.itclan.cn' },
{ text: '小弋の阅览室', link: 'https://lovelijunyi.gitee.io/blog' }
]
}
]
},
{ text: '面试', link: '/interview/' },
{
text: "工具",
items: [
{
text: "思维导图",
items: [
{ text: "百度脑图", link: "https://naotu.baidu.com/" },
{ text: "ProcessOn", link: "https://www.processon.com/" },
{ text: "GitMind", link: "https://gitmind.cn/" }
]
},
{
text: "文档管理",
items: [
{ text: "语雀", link: "https://www.yuque.com/dashboard" },
{ text: "腾讯文档", link: "https://docs.qq.com/desktop" }
]
},
{
text: "平台管理",
items: [
{ text: "聚合图床", link: "https://www.superbed.cn/" },
{ text: "音乐后台", link: "https://myhkw.cn/admin/user/login/" }
]
}
]
},
{ text: '关于', link: '/about/' },
{ text: 'Github', link: 'https://github.com/dldgpc' }
]
}
可以按照这个类似的结构,无限制的配置下去
光有 nav 导航是不够的,下面来配置一下侧边栏,怎么配置侧边栏才是重中之重
# 配置侧边栏-slider
# 自动获取侧边栏内容
如果你希望自动生成当前页面标题的侧边栏, 可以在 config.js 中配置来进行配置启动
module.exports = {
themeConfig: {
sidebar: 'auto',
},
};
警告
默认情况下,侧边栏会自动地显示由当前页面的标题(headers)组成的链接,并按照页面本身的结构进行嵌套,您可以通过 themeConfig.sidebarDepth 来修改它的行为。
默认的深度是 1,它将提取到 h2 的标题,设置成 0 将会禁用标题(headers)链接,同时,最大的深度为 2,它将同时提取 h2 和 h3 标题,如果想要额外拓展,支持 h1~h6,在 markdown 配置拓展中markdown.extractHeaders,如下所示
module.exports = { markdown: { extractHeaders: ['h2', 'h3', 'h4', 'h5', 'h6'], }, };
# 侧边栏分组配置
在docs根目录下面有 fontend文件夹,frontend文件夹又分为framework和Technology文件夹,各组下面有多个md文件,这时的配置应该为如下:
module.exports = {
themeConfig:{
sidebar:{
// docs文件夹下面的frontend文件夹 文档中md文件 书写的位置(命名随意)
'/frontend/': [
{
title: '前端框架',
collapsable: false, // 可选的, 默认值是 true,表示是可折叠的
children: [
['/frontend/framework/BootStrap', 'BootStrap框架'],// 以docs为根目录来查找文件
// 上面地址查找的是:docs>frontend>framework>BootStrap.md 文件
['/frontend/framework/VueJs框架','VueJs框架'],
]
},
{
title: '前端技术',
collapsable: true,
children: [
['/frontend/Technology/NodeJs', 'NodeJs'],
['/frontend/Technology/前端理论','前端理论'],
]
},
['/frontend/Web网页优化','Web网页优化'],
['/','返回首页'],
],
}
}
}
效果如图所示:
此时相关的目录结构如下:
├─package.json
├─docs
| ├─README.md
| ├─fontend
| | ├─framework
| | ├─Technology
| | └README.md
| | └Web网页优化.md
# 侧边栏层级深度
默认情况下,层级深度只展示到二级标题,但是你可通过themeConfig.sidebarDepth
属性修改默认行为。
0
:禁用标题链接,只提取h1
的标题;
1
:默认值,他将提取到h1
、h2
的标题;
2
:最大值,将提取h1
、h2
、h3
的标题。
设置方式有两种:
在
themeConfig.sidebarDepth
设置,他将影响所有页面的侧边栏层级。themeConfig: { sidebarDepth: 2, }
在文件中使用
YAML
格式设置,将单独影响当前页面:--- sidebarDepth: 2 ---
# 拆分-config
在拆分之前,需要了解CommonjS中模块化导入导出的规则,在一个文件中导入一个文件使用require方式;而导出一个对象或变量,使用的是module.exports。
拆分后的目录变化如下:
├─config.js // 主要入口配置文件
├─config
├─nav.js // 导航栏配置
├─sidebar.js // 侧边栏配置
├─plugin.js // 默认主题相关配置
├─public
| ├─img
| | ├─psb.jpg
| └favicon.ico
nav.js具体如下:
const navs= [
{ text: '首页', link: '/' },
{ text: '前端', link: '/frontend/'},
{ text: '后端',
items: [
{text: '后端框架',link:'/rearend/framework/Mybaits学习总结'},
{text: '后端技术', link: '/rearend/Technology/后端理论' },
]
},
{ text: '公众号',
items: [
{text: '订阅号',link:'/'},
{text: '服务号', link: '/' },
{text: '小程序', link: '/' },
]
},
{
text: '超级入口',
items: [
{
text:"个人博客",
items:[
{ text: '向阳榆木', link: 'https://www.xyym.cf' },
{ text: '偏偏💖雨季', link: 'https://lllzxqq.gitee.io' },
{ text: '浪子游方', link: 'https://yumuxy.gitee.io' }
]
},
{
text:"大佬博客",
items:[
{ text: 'Java 全栈知识体系', link: 'https://www.pdai.tech' },
{ text: 'itclanCoder', link: 'https://coder.itclan.cn' },
{ text: '小弋の阅览室', link: 'https://lovelijunyi.gitee.io/blog' }
]
}
]
},
{ text: '面试', link: '/interview/' },
{
text: "工具",
items: [
{
text: "思维导图",
items: [
{ text: "百度脑图", link: "https://naotu.baidu.com/" },
{ text: "ProcessOn", link: "https://www.processon.com/" },
{ text: "GitMind", link: "https://gitmind.cn/" }
]
},
{
text: "文档管理",
items: [
{ text: "语雀", link: "https://www.yuque.com/dashboard" },
{ text: "腾讯文档", link: "https://docs.qq.com/desktop" }
]
},
{
text: "平台管理",
items: [
{ text: "聚合图床", link: "https://www.superbed.cn/" },
{ text: "音乐后台", link: "https://myhkw.cn/admin/user/login/" }
]
}
]
},
{ text: '关于', link: '/about/' },
{ text: 'Github', link: 'https://github.com/dldgpc' }
];
module.exports = navs;
sidebar.js具体如下:
const sidebar= {
// docs文件夹下面的frontend文件夹 文档中md文件 书写的位置(命名随意)
'/frontend/': [
{
title: '前端框架',
collapsable: false, // 可选的, 默认值是 true,表示是可折叠的
children: [
['/frontend/framework/BootStrap', 'BootStrap框架'],// 以docs为根目录来查找文件
// 上面地址查找的是:docs>frontend>framework>BootStrap.md 文件
['/frontend/framework/VueJs框架','VueJs框架'],
]
},
{
title: '前端技术',
collapsable: true,
children: [
['/frontend/Technology/NodeJs', 'NodeJs'],
['/frontend/Technology/前端理论','前端理论'],
]
},
['/frontend/Web网页优化','Web网页优化'],
['/','返回首页'],
],
//后端配置
};
module.exports = sidebar;
而在config.js中,通过require的方式引入即可,如下所示
const nav = require('./config/nav'); //导入导航栏nav 后缀名xx.js可以省略
const sidebar = require('./config/sidebar'); //导入侧边栏sidebar
module.exports = {
themeConfig:{
nav,
sidebar:sidebar // 也可以直接就写sidebar,Es6中的简写,当键与键值同名时,可直接写一个,如nav同样生效
}
其他head,sidebar和plugin等配置也是如此,代码与之前是没有任何改变的,只不过是对config.js进行了分割,将导航栏、侧边栏、插件等配置分离出去,避免全部写在config.js
显得很杂乱。
注意事项
每尝试配置一个 API,记得在命令行终端就重新启动npm run docs:dev一下,并且清理一下浏览器缓存,再从浏览器查看一下配置效果,目前 vuepress 的热更新存在一些问题,官方以后肯定会修复的。
# 配置插件
有时候,我们想让我们的网站博客更加顺畅,用户体验更好,可以结合一些第三方的插件,开箱即用
配置内置的全局 UI,首先需要在当前项目下使用npm或者yarn安装插件
// 回到顶部插件,推荐使用yarn安装插件,它安装比npm更快,不熟悉的,可以去了解下yarn的,包管理工具
yarn add -D @vuepress/plugin-back-to-top
然后在,config.js 中进行配置:
module.exports = {
plugins: ['@vuepress/back-to-top'],
};
警告
⒈ 安装插件的版本需要与 vuepress 的版本保持一致,如果低版本的back-to-top,会出现不了,其他插件配置也是如此
⒉ 凡是带有@开头的插件,都是官方维护的插件,需要与当前项目的 vuepress 版本保持一致
⒊ 非@开头的插件,则是社区或者个人开发的插件,vuepress 版本每个一段时间,或许都会升级,以你自己的为准
// 在package.json中就可以看到安装过的一些插件版本情况 "devDependencies": { "@vuepress/plugin-back-to-top": "^1.8.2", "vuepress": "^1.8.2", "watchpack": "^2.1.1" }
# 支持-PWA
vuepress有一个比较好的优势, 就是它是支持 PWA,也是支持响应式的,无论是在 pc 端浏览还是在手机端浏览器浏览,显示都很友好,而当用户没有网的情况下,一样能继续的访问我们的网站
安装-pwa
yarn add -D @vuepress/plugin-pwa
# OR npm install -D @vuepress/plugin-pwa
在 config.js 中进行配置:
module.exports = {
plugins: [
[
'@vuepress/pwa',
{
serviceWorker: true,
updatePopup: true,
},
],
],
};
注意
为了让你的网站完全地兼容 PWA,你需要提供 manifest文件和在头部 head 进行引用:
在.vuepress/public 提供 Manifest 和 icons 在 .vuepress/config.js添加正确的 head links
在config.js的head配置项中
// 配置
module.exports = {
head: [
['link', { rel: 'icon', href: `/icons/favicon.ico` }],
//增加manifest.json
['link', { rel: 'manifest', href: '/manifest.json' }],
],
};
manifest.json文件
{
"name": "KingPan",
"short_name": "KingPan",
"version": "1.0.0",
"description": "KingPan,壹米阳光博主, 壹米阳光の档案馆",
"manifest_version": 2,
"icons": [
{
"src": "/icons/apple-touch-icon.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "/icons/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
],
"start_url": "/index.html",
"display": "standalone",
"background_color": "#fff",
"theme_color": "#3eaf7c"
}
生成 favicon 图标 (opens new window) Manifest 各个字段含义 (opens new window)
此时public目录结构变化:
├─public
| ├─img
| | ├─psb.jpg
| ├─icons
| | ├─apple-touch-icon.png
| | ├─android-chrome-512x512.png
| | └favicon.ico
# 配置评论插件
vssue (opens new window)是官方推出的,也有专门的团队在维护,也很强大,支持多个平台,但由于用惯了valine评论插件,就继续使用了。
# 插件 Valine
1 一款快速、简洁且高效的无后端评论系统
2 官方文档:valine (opens new window)
在使用 valine 之前,先前往leancloud 注册账号 (opens new window)
然后创建应用, 获取APP ID和APP KEY。
# 安装-vuepress-plugin-comment
yarn add -D vuepress-plugin-comment
# 快速使用
在.vuepress下的config.js的plugin插件选项中进行配置
module.exports = {
plugins: [
[
'vuepress-plugin-comment',
{
choosen: 'valine',
// options选项中的所有参数,会传给Valine的配置
options: {
el: '#valine-vuepress-comment',
appId: 'Your own appId',
appKey: 'Your own appKey',
},
},
],
],
};
其中appid和appkey为你创建的应用的APP ID 和APP Key,把刚才获取到的秘钥复制过来即可,经过配置之后重新运行测试一下。
# 自动生成侧边栏
有时候,你会发现,每次管理侧边栏,都需要手动去创建管理侧边栏的,虽然已经对 slidbar 以及 nav 做了拆分,但是依旧不完美,可以 借助vuepress-plugin-auto-sidebar,这个插件,自动去配置管理我们的侧边栏的
vuepress-plugin-auto-sidebar 仓库 (opens new window)
vuepress-plugin-auto-sidebar 使用文档 (opens new window)
目前,只需知道怎么配置,怎么修改配置能达到自己的效果就可以了,后面更换主题后自带的自动生成侧边栏功能,会发现比自己写的好太多了,而且更注重在写作上面,不用那么多麻烦的配置。处于学习阶段,还是需要了解如何配置就行。
存在问题:
由于做了插件分离出去,但该插件分离后无法生效,如果配置在config.js里面,需要把自己写的侧边栏sidebar给注释掉,否则也无反应。总之对此插件采取冷处理方式,最好先不用它。
若发现先前的返回置顶和评论系统不见了,有可能是插件莫名其妙被删除了,重新下载后在node_modules中找到,再重新运行就可以了。
# 部署到-github 平台
# 配置自动化部署脚本
在vuepress(以你自己的为准)根目录下,创建一个如下的脚本文件deploy.sh:
# 确保脚本抛出遇到的错误
set -e
# 生成静态文件
npm run build
# 进入生成的文件夹
cd docs/.vuepress/dist
# 如果是发布到自定义域名
# echo 'www.example.com' > CNAME
git init
git add -A
git commit -m '部署项目'
# 如果发布到 https://<USERNAME>.github.io,把下面一行注释掉,替换username即可,注意以下这是ssh的方式
# git push -f git@github.com:<USERNAME>/<USERNAME>.github.io.git master
# git push -f git@github.com:dldgpc/dldgpc.github.io.git master
# 如果发布到 https://<USERNAME>.github.io/<REPO>
# git push -f git@github.com:<USERNAME>/<REPO>.git master:gh-pages
cd -
此时目录结构变化如下:
├─docs
| └README.md
├─deploy.sh
├─package.json
# 启动-deploy.sh-脚本
当你在git bash命令行终端执行bash deploy,注意在DOS命令行终端下,不支持这个bash命令,或者双击deploy.sh这个脚本 就会自动的执行这个脚本,分别完成构建和向远端指定的仓库提交代码
有时候,我们希望执行一行命令就可以完成自动化部署,那么您需要在package.json中的scripts中添加deploy:bash deploy.sh就可以了的,往后在命令行终端执行npm run deploy或者yarn deploy就可以自动执行该deploy.sh脚本了。
"scripts": {
"dev": "vuepress dev docs",
"build": "vuepress build docs",
"deploy": "bash deploy.sh"
},
提示
如果自动部署脚本不成功,可以尝试如下操作
⒈ npm run docs:build,手动构建
⒉ git push -f git@github.com:dldgpc/dldgpc.github.io.git master
问题记录:
Github从2020年10月份开始,新建仓库从原来默认的master变成了main,由于不注意就提交到master了,导致部署的博客无法显示,显示的是另外的分支master。
解决办法:
首先打开xxxx.github.io仓库,点击顺序为:Settings》Branches,将默认分支main修改为master,然后点击Update更新保存,然后再点击Options按钮,往下拉找到GitHub Pages,将Branch:main同样修改为master,然后点击Save按钮保存,这时候重新打开网站xxxx.github.io就能正常显示上传的博客内容了。至于提交命令尝试过将git push -f master修改为git push -f main,但提示报错行不通,后面有时间再研究一下命令的改法。因为以后默认都是main为主分支了。