本文
主要介绍了如何将hugo创建的博客站点部署到github。
版本 | 说明 |
---|---|
0.1 | 初版发布 |
0.2 | 修改issue.sh脚本 |
背景
- 主机: Thinkpad S2
- 系统: Deepin GNU/Linux 15.11
- 内核: Debian 6.3.0-18+deb9u1
- hugo版本: hugo 0.58
参考
git的安装与介绍
请参考我的另一篇帖子git的安装。
部署过程
在github创建仓库
首先登录 github官网,如果没有账户需先用邮箱注册一个账户,然后点击 Repositories [new] ,新建仓库,新建页面如下。
- 1位置是用户名
- 2位置是仓库名
- 3位置是选择公开还是私有
- 4位置点击创建仓库
github新建仓库
克隆仓库
复制仓库的http链接,使用 “git clone http…” 命令,将创建的仓库克隆到本地,如果是新仓库的话,会提示你 似乎你克隆了一个空仓库 ,可以不用管。
启用github page功能
GitHub Pages 是一个静态网站托管服务,简单说就是他可以实现创建个人网页。我们需要给名为 username.github.io 的仓库启用github page功能,需要以下几步:
- 首先空仓库是不能启用page功能的,你需要添加一个文件(无所谓什么文件,可以写个readme),通过以下git命令,上传到远程仓库。这里可能需要输入账户密码,可以使用 "git config –global credential.helper store" ,避免重复输入账户密码。
|
|
- 打开github,进入名为 username.github.io 的仓库,然后点击 settings ,拉到最下面会看到 Github Pages ,此时关于github page是 None 状态,将其选择为 master branch (如果是私有仓库是无法开通的,所以创建时我们选择了公共仓库),如果有显示 “Your site is published at https://username.github.io/” ,就是启动了page功能,你可以使用此网址访问你的个人网页了,只不过目前什么内容都没有。这里对page的网址说明一下,如果仓库名为 username.github.io ,那网址就为 “https://username.github.io/” ,如果仓库名为其他,则网址中会带有仓库名,也就是 “https://username.github.io/reponame/” ,如果是这样,使用hugo时,本地相对路径索引的图片上传后通过网页是无法加载的,hugo生成的图片链接没有仓库名,这里是经过试错得到结论。
生成博客站点静态文件并上传到远程仓库
- 打开终端,进入博客站点根目录 my_blog ,使用 “hugo server” 命令预览博客,无问题的话输入 “hugo” 命令,生成博客站点静态文件 public ,我们将 public 内文件全部粘贴到 username.github.io 仓库,并上传到远程仓库,命令参考上文。
- 打开浏览器,输入开启github page时提示的网址,就看到你的个人博客网页了,到此部署成功。
- 我们也可以写一个脚本方便处理,我起名为 issue.sh ,如下:
|
|
维护自己的博客内容和环境
最初我们创建了两个仓库,目的就是一个开启page功能,将博客静态文件发布到网络,另一个就是维护博客内容和环境文件。
- 复制仓库的http链接,使用 “git clone http…” 命令,将创建的仓库克隆到本地,如果是新仓库的话,会提示你 似乎你克隆了一个空仓库 ,可以不用管。
- 将博客站点根目录my_blog中的所有文件复制到克隆的仓库文件(仓库名也可以为my_blog)
- 这里themes中的jane本身是一个git仓库,我们可以不用上传到远程仓库,生成的public是中间文件也不需要上传到远程仓库,所以添加一个 .gitignore 文件,git可以自动忽略 .gitignore 列出的文件,不上传到远程仓库。终端中进入博客站点根目录,输入如下命令即可:
|
|
- 将博客内容和环境文件上传之远程仓库,命令参考上文。
文章原创,可能存在部分错误,欢迎指正,联系邮箱 cao_arvin@163.com。