将`VuePress`建立的博客部署到GitHub或Gitee上
将VuePress
建立的博客部署到GitHub或Gitee上
在上一篇中,我们详细介绍了如何利用VuePress
搭建起个人博客系统,但这只是在本地debug启动的,接下来,我们把它部署到Github
网站。
在
config.js
中配置base
base: '/v-blog/',
v-blog
是我Github上的仓库名编写自动化脚本
在根目录
/v-blog/
下我们需要编写两个脚本因为写在一个脚本里话编译完会直接退出,
所以把编译的命令单独放在另外一个脚本文件里调就可以了build.bat
@echo off
vuepress build docs
deploy.bat
@echo off
echo building...
call build.bat
echo building-complete.
cd docs/.vuepress/dist
git init
git add -A
git commit -m 'auto-deploy'
git remote add origin https://github.com/CoderMonkie/v-blog.git
git pull
git push --force origin HEAD:gh-pages
REM To delete the dist folder
cd ..
echo delete-directory: "%cd%/dist"
rmdir /s /q "%cd%/dist"
cd..
cd..
echo Auto-Deploy-Complete!
pause
然后,只要双击执行
depploy.bat
就可以。
或者配置到package.json
的scripts
中。"scripts": {
"deploy": "deploy.bat"
}
npm run deploy
编译完成提及到远程的时候,会提示输入用户名密码。
(或者保存登录权限信息使其静默推送)GitHub中本项目的
setting
下确认我们在push时设为推送到
gh-pages
分支,
此时,v-blog
--setting
下的GitHub Pages
设置,
应该为gh-pages
选中状态,不是的话改为gh-pages
这样就完成了。如果
GitHub Pages
设置页显示:Your site is published at https://codermonkie.github.io/v-blog/
那么说明网站发布了,可以查看。
Your site is ready to be published at https://codermonkie.github.io/v-blog/.
那么说明
GitHub
还没有完成给你发布,访问的话会是404,等待吧。
(深夜)更新:已经好了v-blog
在GitHub Pages
/source
的下拉框里切换了几次,不经意间发现已经发布了。
补充:
补两张图,看起来能更简明,直截了当。
GitHub
在【Setting -- GitHub Pages】的Source的下拉框中选择要使用的分支
(也可以branch/docs文件夹,不过我们VuePress生成的博客嘛直接用分支了)
Gitee
在【服务 -- Gitee Pages】点【启动】
更新网站的话静态文件推送后要点【更新】
如果是要将博客部署到Gitee:
除了我们可以同时提交到两个远程(GitHub和Gitee仓库),
关联多个远程仓库,实现一次push多站提交
也可以在同一个工程文件里实现两个远程仓库的部署。
将上面给出的脚本deploy.bat
,另存一份deploy-gitee.bat
,
修改一下,主要有两处:
- 远程地址(github -> gitee 的地址)
- 提交到的远程分支名(gh-pages -> v-blog-pages)
@echo off
echo building...
call build.bat
echo building-complete.
cd docs/.vuepress/dist
git init
git remote add origin https://gitee.com/coder-monkey/v-blog.git
git add -A
git commit -m 'auto-deploy'
git pull
git push --force origin HEAD:v-blog-pages
REM To delete the dist folder
cd ..
echo delete-directory: "%cd%/dist"
rmdir /s /q "%cd%/dist"
cd..
cd..
echo Auto-Deploy-Complete!
pause
package.json
里加scripts
一个命令
"scripts": {
"deploy-gitee": "deploy-gitee.bat"
}
双击执行deploy-gitee.bat
或以下:
npm run deploy-gitee
再稍微动动手脚本稍作修改就可以实现一次命令多个远程部署了~
auto-deploy.bat
最终版:
@echo off
echo building...
call build.bat
echo building-complete.
cd docs/.vuepress/dist
git init
git config user.name maonianyou
git config user.email maonianyou@foxmail.com
git add -A
git commit -m "%date% %time% auto-deploy"
REM 静默推送的话可在地址里填入username和password,如
REM git remote add origin https://username:password@gitee.com/username/repo.git
git remote add origin https://gitee.com/coder-monkey/v-blog.git
git pull
git push --force origin HEAD:v-blog-pages
echo "Gitee Pages Deploy Complete!"
REM 部署完上面的 Gitee Pages
REM 需要删除 .git 文件夹
REM 以备部署 GitHub Pages 再次初始化时用
rmdir /s /q "%cd%/.git"
git init
git config user.name maonianyou
git config user.email maonianyou@gmail.com
git add -A
git commit -m "%date% %time% auto-deploy"
REM 静默推送的话可在地址里填入username和password,如
REM git remote add origin https://username:password@github.com/username/repo.git
git remote add origin https://github.com/CoderMonkie/v-blog.git
git pull
git push --force origin HEAD:gh-pages
echo "GitHub Pages Deploy Complete!"
REM To delete the dist folder
cd ..
echo delete-directory: "%cd%/dist"
rmdir /s /q "%cd%/dist"
cd..
cd..
echo Auto-Deploy-Complete!
pause
"scripts: {
"deploy": "auto-deploy.bat"
}
npm run deploy
还能继续改进?
package.json
/scripts
加一条,执行git push
和auto-deploy.bat
这样推送加部署就一口气完成啦使用
netlify
或者travis-ci
这样的工具
GitHub
的WebHook
也要了解一下
更多好玩的,赶快来探索吧~
将`VuePress`建立的博客部署到GitHub或Gitee上的更多相关文章
- 怎么把使用vuepress搭建的博客部署到Github Pages
推荐在这里阅读效果更佳 背景 网上搜了很多教程,包括官网的教程,但是还是费了一番功夫, 如果你使用自动化部署脚本部署不成功的话,可以参考我的这个笨方法 这是部署后的效果 前提 我假设你本地运行OK, ...
- 搭建自己的技术博客系列(二)把 Hexo 博客部署到 GitHub 上
1.在GitHub上建一个新仓库
- hexo博客部署到github无法上传的问题
博客生成之后,按照网上别人的教程,讲项目部署到github上,修改_config.yaml中的deploy部分如下所示: deploy: type: git repository: https://g ...
- Hexo博客部署-使用github作为保存中转仓库
本篇是在VPS上搭建Hexo静态博客的第一篇博文,写本篇的目的一是纪念一下,二是作为一个部署文档保留. 博客地址 相关描述 VPS环境是在搬瓦工上安装的centos6(x86),1核,512MB,10 ...
- Hexo 博客部署到 GitHub
本文简单记录了一下把 Hexo 部署到 GitHub 上的过程,也是搭建静态博客最常用的一种方式. 前面写了关于如何把 Hexo 安装在树莓派上的教程,但树莓派毕竟是连着自己的家的路由器,万一哪天网断 ...
- 上一周,小白的我试着搭建了两个个人博客:在github和openshift上
上一周,突发奇想,想搭建个自己的博客. 由于是突发奇想,自然想先找免费的试试手.仔细搜索下,选定了目标Openshift和Github. Openshift 安装WordPress OpenShift ...
- Hexo博客部署到远程仓库(Conding、Gitee、Github)
一.本地环境搭建 1.安装Git Git可以有效.高速的处理各种项目版本管理.也就是用来管理你的hexo博客文章,上传到GitHub的工具. Git下载地址 安装好了之后使用git -version查 ...
- 手把手教你使用 VuePress 搭建个人博客
手把手教你使用 VuePress 搭建个人博客 有阅读障碍的同学,可以跳过第一至四节,下载我写好的工具包: git clone https://github.com/zhangyunchencc/vu ...
- 使用VuePress搭建个人博客
使用VuePress搭建个人博客 VuePress 是一个基于 Vue 的静态网站生成器.其中主要用到:Vue,VueRouter,Webpack. 类似的工具:hexo 基于 Markdown 语法 ...
随机推荐
- cookie、session 和 token 区别
1.什么是 cookie cookie 是保存在本地终端的数据.cookie 由服务器生成,发送给浏览器,浏览器把 cookie 以 kv 形式保存到某个目录下的文本文件内,下一次请求同一网站时会把该 ...
- python(time 模块)
一.Time 模块 1.时间戳 时间戳是指格林威治时间 1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒) 起至现在的总秒数 最早出现的 UNIX 操作系统考 ...
- unittest(discover 批量执行用例)
import unittest dir = "D:\\work_doc\\pycharm2\\python_Basics" #自动化用例所存放的路径 suit = unittest ...
- 别了,JavaScript;你好,Blazor
Web开发与JavaScript开发向来是同义词.直到WebAssembly的横空出世,WebAssembly (Wasm)是一种在浏览器中可以执行的二进制指令. WebAssembly 的 官方工具 ...
- Python网络数据采集- 创建爬虫
1. 初见网络爬虫 1.1 网络连接 输出某个网页的全部 HTML 代码. urllib 是 Python 的标准库(就是说你不用额外安装就可以运行这个例子),包含了从网络请求数据,处理 cookie ...
- 动态代理学习(一)自己动手模拟JDK动态代理
最近一直在学习Spring的源码,Spring底层大量使用了动态代理.所以花一些时间对动态代理的知识做一下总结. 我们自己动手模拟一个动态代理 对JDK动态代理的源码进行分析 文章目录 场景: 思路: ...
- [hdu4585]离线,并查集
题意:把一些数加到集合里面,每个数有两个属性,分别是编号和值,加进去之前询问集合里面距离自己“最近”的数的编号.最近的意思是值的差的绝对值最小,如果有相等的,则取值小的.并且已知所有数的id和valu ...
- [hdu4300] next数组的应用
题意:给你一个密文和明文的对应表以及一个密文+明文的字符串,明文可能只出现前面的一部分(也就是说是原明文的前缀),求最短的明文. 思路:首先密文的长度至少占到一半,所以先把那一半解密,问题转化为找一个 ...
- 微信小程序云开发|Error: ResourceNotFound.FunctionName, FunctionName 指定的资源不存在。 (41cd9de8-ff9b-4b1e-a65e-81ae9
今天在上传云函数部署的时候老发现上传login 失败 ... 经过查阅资料有两种方法可行: 云函数上传后不要轻易删除!!! 1.重启客户端 2.最好的解决方法在云平台开发创建一个新的云函数覆盖就o ...
- Mysql 常用函数(5)- substring 函数
Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html substring 的作用 截取指定范围的字符串, ...