目前 MarkDown 作为一种程序员必备的轻量级标记语言,避免了富文本编辑器换平台就要重新排版的繁琐,使我们可以专注于技术的输出,但使用 markdown 也有弊端,那就是图片的存储问题,markdown 文件要用到图片时必须是一个链接。各个平台都有自己的图片存储方法,在不使用图床的情况下,同一篇文章发布到不同的平台需要单独上传图片一次。如果都放本地这样实在是太麻烦了。
目前最好的解决办法就是使用图床来存储图片
图床 | 说明 |
---|---|
sm.ms | 无需注册,海外服务器【免费】 |
meotu | 要注册,国内服务器【免费】 |
z4a 图床 | 要注册,国内服务器【免费】 |
imgtp | 无需注册,国内服务器,最大支持 15MB【免费】 |
imgbed | 无需注册,国内服务器,最大支持 20MB【免费】 |
聚合图床 | 要注册,国内服务器【免费】 |
牛图网 | 无需注册,日本服务器 【免费】 |
imgbb | 无需注册,亚太服务器【免费】 |
upload | 无需注册,海外服务器 【免费】 |
catbox | 无需注册,海外服务器【免费】 |
路过图床 | 要注册,海外服务器【免费】 |
TG 图床 | 无需注册,国内外服务器【免费】 |
Postimages | 无需注册,国外服务器速度快【免费】 |
imgloc | 无需注册,国内服务器,最大支持 6MB【免费】 |
上传图片之前建议压缩一下,可以减少空间使用,并且可以有效加快图片载入速度。比较好的压缩工具如下
在线工具:
两者区别是 TinyPNG 是无损压缩,Imagestool 是有损压缩,不过通过肉眼是区别不出两者的。
本地工具:
选择好图床后肯定就是上传并使用图片了,这时就会面对一个问题,那就是每次都要去图床上传,然后复制链接,然后回到使用图片的平台粘贴使用。特别麻烦。所以就出现了图床管理工具帮助我们快速上传图片并获取图片 URL 链接。这样就省去了自己操作的繁琐。
以下是一些优秀的图床管理工具
强烈推荐 PicGo,PicGo 支持 smms、 又拍云 、七牛云 、 阿里云 OSS、 腾讯云 COS、微博、Github、 Gitee、 Amazon S3、自定义上传接口。(还支持其他储存)而且还可以选择上传前压缩图片。压缩工具都省了。如果你有更好的建议或推荐的图床,欢迎在下方评论区留言。
由于 jsdelivr 具有不稳定因素,非常不推荐使用这个方式当做图床。
这种方式虽然比 Github + jsdelivr 稳定些,但仍然不推荐,调取 npm 过多可能会被 npm 封号,Github 封库,到那时就真的得不偿失了。 因此这两种教程就不在叙述了,也希望,正在如果正在使用这两者方案你的更换一下图床方案。
这类在 Github 上有很多开源项目,例如 GitHub - lsky-org/lsky-pro: ☁️ 兰空图床(Lsky Pro) - Your photo album on the cloud. GitHub - helloxz/imgurl: ImgURL 是一个简单、纯粹的图床程序,让个人图床多一个选择。 但因为部署成本过高不推荐
此插件有一个 bug!运行 hexo b 后会把主题文件夹里的.git 文件夹删除,导致无法通过 git pull 来升级主题
当我们要换电脑或者重装电脑系统时,博客的备份就显得很重要了,我们无须通过 U盘 来拷贝整个 blog 文件夹,这种方式太浪费时间,我们只需要使用 hexo-git-backup 这个插件,即可帮我们完美的备份好博客。
hexo 版本为 3.xx 以上
npm install hexo-git-backup --save
2020 年 10 月 1 日之后,新创建的仓库默认分支为 main,按个人实际情况填写
private
。D:\blog\_config.yml
中添加以下内容 backup:
type: git
repository:
github: git@github.com:xxx/xxx.git,branchName
如下图:
运行 hexo backup
或缩写 hexo b
即可备份博客
hexo b
windows:在Git 官网下载.exe 文件,安装选项全部默认,注意其中选择环境变量一步推荐选择 Use Git from the Windows Command Prompt
,这样我们就可以直接在命令提示符里打开Git
了。
hexo 是基于 node.js 编写的,所以需要安装一下 node.js 和里面的 npm 工具。
windows:推荐下载和博客之前运行环境同一版本的 Node.js,安装选项全部默认,一路点击Next
。
安装好之后,打开 Git Bash
,输入 node -v
和 npm -v
,如果出现版本号,那么就安装成功了。
打开 Git Bash
,输入
git config --global user.name "yourname"
git config --global user.email "youremail"
ssh-keygen -t rsa -C "youremail"
在 C:\Users\主用户里出现 .ssh
文件夹,里面有 id_rsa
和 id_rsa.pub
两个文件,复制 id_rsa.pub 的内容。
cat ~/.ssh/id_rsa.pub
打开Github,在头像下面点击 Settings
,再点击 SSH and GPG keys
,新建一个 SSH key
,名字随便取一个都可以,把刚刚复制 id_rsa.pub
的内容粘贴进去。
在 Git Bash
中输入 ssh -T git@github.com
,如果出现你的用户名,那就成功了,如下图所示:
克隆上面个人备份博客的仓库 hexo-backup
到本地 blog 文件夹
git clone -o github git@github.com:xxx/xxx.git
在 blog 文件夹下 GIt Bash Here
npm install hexo-cli -g
npm install
最后运行 hexo cl
&& hexo g
&& hexo d
,检查是否成功。
fatal: ‘github’ does not appear to be a git repository fatal: Could not read from remote repository
报错原因
如果运行 hexo b
的时候出现上述错误,可以按下述方法解决:
git remote -v # 查看远程仓库信息
git remote rm origin # 如返回结果为 origin git@github.com:xxx/xxx.git
git remote add github git@github.com:xxx/xxx.git
hexo b