借助Gridea+github pages进行个人博客搭建
一、github pages仓库的开启
依赖:一个github账号
第一步:新建一个github repository
进入个人github然后点击"New"新建一个repository。
仓库名构建方式须按照 用户名.github.io
格式。这里由于我的仓库是之前已经构建好的,所以这里会显示一个警告。对于该github账号第一次构建github repository时,是不会显示警告的,而会显示一个绿色对勾表示通过。除此之外,该仓库必须公开访问,因为只有开放访问权限,存放在该仓库的博客网页才能被其它人访问。最后,初始化生成该仓库就OK了。
第二步:进入设置开启github pages
选择刚才新建好的repository进入,然后进入"Settings",选择"Pages"子菜单,最后选择开启 github pages。这里默认选择"master"分支,也可以选择或构建其它分支,只要保证gridea远程同步的分支和仓库中个人打算存在博客网页数据的分支名一致就行。除此之外,这里还可以选择不同的github pages "Theme",但是我感觉没必要,因为gridea主题中有其他好看的主题可以选择。
至此,在浏览器输入 用户名.github.io
就可以访问刚才构建好的github pages了。
二、gridea客户端的设置
个人认为,gridea相比于Hexo而言,是一款简单易用,对一般用户而言更友好的博客写作软件。它不想要用户有任何command形式的操作,仅通过图形界面,依次通过写作,预览,同步的操作即可完成一篇在线博客。
具体操作步骤如下:
第一步:远程设置
对于令牌,需要在个人github账户内生成,其方式如下:
进入个人github账户"Settings",然后选择"Developer settings"子菜单,再进入"Personal access tokens"项,点击"Generate new token"生成新令牌。复制刚生成的令牌粘贴到gridea客户端远程设置"令牌"处。
对于gridea客户端远程设置的CNAME设置,这里就不考虑了。
第二步:评论配置
这里选择依赖于github issue的Gitalk评论插件。
Client ID 和 Client Secret 需要在个人github账户中设置。设置方法如下:
进入个人github账户"Settings",然后选择"Developer settings"子菜单,再进入"OAuth Apps"项,点击"New OAuth App"生成添加评论插件。然后依次填入"Application name","Homepage URL" 和 "Authorization callback URL"(后两项为之前构建好的github pages的主页地址),注册App。
选择刚新建好的名为"Gitalk"的"OAuth Apps"进入,如图点击"Generate a new client secret"生成对应的密钥。至此,可以将这里对应的Client ID 和 Client Secret 信息填入到gridea客户端评论设置中对应的输入栏中。
第三步:gridea菜单设置
第四步:生成博客和同步
gridea博客使用的是markdown语法,有提供一些简化的快捷操作菜单,但有更多的文本要求或格式设置可采用markdown语法进行修饰。
在完成博客书写后,选择保存并发布博客,预览并同步。这样,博客就同步到github仓库了。在浏览器地址栏输入 用户名.github.io
就可以看到自己的博客网站,以及自己刚才发布的博客内容了。
除此之外,用户还可以根据自己喜好选择博客的主题
用户可以从gridea客户端已配备的主题中选择,也可以选择来自github的更多主题。
点击更多主题就可以进行更广泛的主题选择,选择自己喜欢的一款下载下来解压到gridea配置路径中theme文件内。重新进入主题就可以选择新添的主题元素了。
很多时候,由于网络问题会出现gridea同步失败的情况,这个时候可以采用github desktop或者git命令 进行clone和pull对数据同步。
- 进入github desktop 点击"File" 选择"Clone a repository"选择一个仓库或者输入仓库并clone到本地。
- 将gridea output 路径下(C:\Users\用户名\Documents\Gridea\output)除了
.git
的所有文件拷贝至github desktop 刚拷贝的远程仓库的本地路径中。然后在github desktop中Commit所有更改,最后选择"Pull origin"同步到远程仓库中即可。这一步可能也是国内github网站受限的因素吧,难以连接和同步,科学上网的话会比较舒畅吧。