[建站相关] 从零开始搭建个人博客网站系列 二、把Hugo个人站点托管到Github Pages上
作者:CC下载站 日期:2021-12-02 01:01:55 浏览:24 分类:站长帮
使用个人博客也有一年多的时间,这一年多的时候踩了很多坑,也学到了很多知识。
把Hugo个人站点托管到Github Pages上
上一篇文章,我们学习了怎么搭建个人博客,但是只是在个人电脑上运行,现在我们要把博客部署到互联网上让其他的用户能够访问到你的个人博客网站。
如果你没有自己的云服务器,不要慌,我们可以把个人博客搭建在Github Pages
中,就跟搭建在自己的服务器一样。
Github Pages
是Github提供的一个静态网站托管服务,可以用于存放静态网页,包括博客,项目文档甚至整本书。非常适合我们搭建个人博客。
创建Github Pages
要想把个人博客托管在Github Pages上,首先你需要有一个Github账号,作为程序员,应该每个人都有自己的Github账号。
下面我介绍下怎么部署在Github Pages上:
假设你需要部署在 GitHub Pages 上,首先在GitHub上创建一个Repository,命名为:{your_username}.github.io
. 比如我的Repo就叫 codingxiaoma.github.io
。
如果你对你的username不满意,需要先在Setting->Account->Change username
修改一个你满意的username。
注: Repository的前缀一定要跟你的username保持一致。
Repo的权限需要选择Public, 否则无法访问。
勾选Add a README.md
,主要是为了自动创建main分支。
然后在你的 仓库 xx.github.io
里面点击Settings
, 左边的菜单栏找到Pages
。
可以看到Your site is live at https://codingxiaoma.github.io/
你的Github Pages就自动部署好了。点击Visit Site就可以看到你的网站了。
因为我们的仓库是空的,所以网站也是空的。
下面还可以改主题。但是因为我们需要绑定到hugo上,所以直接使用hugo的主题就可以了。
搭建Hugo站点
这个在上一篇文章里面有讲解:如果有疑问可以回顾上一篇文章。 从零开始搭建个人博客(一)- 使用hugo搭建个人博客
hugo站点和目标文件
现在我们有了Hugo
个人站点,有了Github Pages
,那么下一步就是把hugo博客发布到github。这样我们才能在互联网的任何地方访问我们的博客。
在我们本地的hugo根目录中执行 hugo 指令。会生成一个public文件夹,我们只需要把public的文件夹上传到github上刚才创建的Github 仓库
里面, 一分钟左右,就能正常查看博客内容。
这里解释一下
- hugo站点(hugo根目录):这个是源文件,也就是你写Markdown的地方,可以不用提交到github,也可以选择在github上创建一个新的repo,并提交。
- public文件(hugo/public):这个是目标文件,是使用hugo指令生成的发布HTML内容,可以在浏览器浏览的格式,需要推送到Github上然后发布到Github Pages静态网站上。
我们的hugo站点是源文件 (带主题,图片,markdown源文件),public是目标文件(最终生成的css/js/html文件)。我们最终网页上展示的是目标文件,所以需要使用hugo指令生成目标文件。
发布博客到Github Pages
在任意hugo站点外(是为了以后把hugo源文件也上传到github,git是不能有层级的,所以要放在站点外),直接用git clone把创建好的github仓库
克隆下来。
git clone [email protected]:codingxiaoma/codingxiaoma.github.io.git
然后把public里面的所有内容复制到这个Git仓库
并执行:
1
2
3
git add *
git commit -m "first commit"
git push
即可成功把内容push到远程仓库。
复杂一点但是方便的办法
为了不要每次改动都手动复制,我们可以创建一个public
目录和github 仓库
的软链接。
(需要先删除public目录)
1
2
3
4
5
6
7
# 进入你的hugo根目录
# 删除public文件夹
rm -rf public
# 前面是 github.io仓库的本地目录,后面是 public文件夹的本地目录
ln -s /Users/hugo/codingxiaoma.github.io /Users/hugo/codingxiaoma/public
然后在hugo站点
使用hugo指令,就会自动在public软链接也就是git repo下生成目标文件。
最终执行git add/commit/push
之后,打开
https://codingxiaoma.github.io/
就能看到博客内容。 (可能有几分钟延迟,耐心等待)。
如果git push提示没有权限:
ERROR: Permission to left-pocket-test/left-pocket-test.github.io.git denied to left-pocket.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
那就在Github上添加一下ssh key就好了。
在电脑上生成ssh key
:
1
2
3
4
# mac command
cd ~/.ssh
ssh-keygen -t rsa -C "[email protected]" # 填写你的邮箱地址
然后一路 Enter
到底(不需要填路径和密码,全部默认值就好)。就会在 ~/.ssh/
目录生成默认的文件:
id_rsa
私钥id_rsa.pub
公钥
生成成功后,把id_rsa.pub
也就是公钥
的内容copy到github上即可。
cat ~/.ssh/id_rsa.pub
并复制- 登录github,Settings->SSH and GPG Keys->add SSH Key.
shell脚本一件编译并提交到github 在任意目录复制下面的指令并点击return执行。
1
2
3
4
5
6
7
echo "#\!/bin/sh" > hugo.sh
echo "cd /Users/hugo/hugo/ && hugo" >> hugo.sh
echo "cd /Users/hugo/codingxiaoma.github.io" >> hugo.sh
echo "git add *" >> hugo.sh
echo "git commit -m \"first commit\"" >> hugo.sh
echo "git push" >> hugo.sh
chmod a+x hugo.sh
执行完会生成一个hugo.sh
的脚本,它会帮你执行编译+提交git的操作。
以后每次只需要到这个目录执行 ./hugo.sh
即可。
发布源文件到Github
注意:
如果只是发布到github pages
上,源文件没必要上传,public也就是目标文件
放在github上的codingxiaoma.github.io
仓库即可。
但是考虑到本机电脑里面的硬盘损坏或者丢失等风险,可以考虑把源文件也上传到github的另一个新的仓库。
同时上传到github上也方便多人协作。
源文件对最终的展示效果没有影响,只是为了方便保存。我个人创建了一个单独的hugo仓库来保存源文件。
-
在Github创建一个空的Repo(不要勾选Add README.md) 创建完会提示你怎么使用指令把本地内容上传到Github
-
在源文件目录下执行指令 github会提示你执行哪些命令
1
2
3
4
5
6
7
8
9
10
11
12
13
echo "# codingxiaoma.github.io" >> README.md
git init
git add *
git commit -m "first commit"
git branch -M main
git remote add origin [email protected]:codingxiaoma/codingxiaoma.git
git push -u origin main
t
这个时候你的源文件就上传到Github的一个新的仓库codingxiaoma
了。这是用来保存源文件的。而codingxiaoma.github.io
是用来保存网站的目标文件的。
<全文完>
猜你还喜欢
- 06-04 [站长技术] 如何开启WordPress Multisite多站点网络
- 03-29 [环境测试] Hexo部署GitHub Pages
- 03-22 [源码设置] 如何设置Xiuno BBS URL-Rewrite(伪静态设定)
- 03-06 [建站交流] PicGo + smms 构建图床
- 11-18 [emlog技巧] Emlog非插件显示评论者IP属地
- 11-09 [网站维护] WordPress 后台速度慢?加快仪表板速度的 15 种方法
- 11-09 [WordPress插件] 10 个最好用的 WordPress 聊天机器人插件(免费和付费)
- 11-09 [WordPress开发] 探索 WordPress 6.3 中的增强样板(Patterns)
- 11-09 [网站维护] 无需插件即可优化 WordPress 速度的 12 种策略
- 11-09 [网站安全] WordPress 安全统计:WordPress 到底有多安全?
- 09-20 [jsp技术] JSP ssm 特殊人群防走失系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计
- 09-15 [Lightsail容器] AWS Lightsail VPS:一种在云中运行容器的简单方法
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[资料] 2025军队文职 公共课+专业课+真题+押题+面试【合集】
[课程] 《大师级航拍教程》63节课程视频 MP4格式 5.9G
[资料] 中医鬼才倪海厦全集完整版+资料全集
[课程] 聂佳判断推理绝版课程大集合【8G】
[电视剧] 芈月传 【全集81集全】【未删减版】【国语中字】【2015】【HD720P】【75G】
[电视剧] 封神榜 梁丽版 (1989) 共5集 480P国语无字 最贴近原著的一版【0.98 G】
[影视] 【雪山飞孤4个版本】【1985、1991、1999、2007】【1080P、720P】【中文字幕】【167.1G】
[资料] 24秋初中改版教材全集(全版本)[PDF]
[电影] 高分国剧《康熙王朝》(2001)4K 2160P 国语中字 全46集 78.2G
[动画] 迪士尼系列动画139部 国英双语音轨 【蓝光珍藏版440GB】
[书籍] 彭子益医书合集 [PDF/DOC]
[游戏] 《黑神话悟空》免安装学习版【全dlc整合完整版】+Steam游戏解锁+游戏修改工具!
[动画] 《名侦探柯南》名侦探柯南百万美元的五菱星 [TC] [MP4]
[动画] 2002《火影忍者》720集全【4K典藏版】+11部剧场版+OVA+漫画 内嵌简日字幕
[剧集] 《斯巴达克斯》1-4季合集 无删减版 1080P 内嵌简英特效字幕
[CG剧情] 《黑神话:悟空》158分钟CG完整剧情合集 4K120帧最高画质
[游戏] 黑神话悟空离线完整版+修改器
[电影] 《变形金刚系列》七部合集 [4K HDR 蓝光] 国英双语音轨 [内封精品特效字幕]【典藏版】235G
[图像处理] 光影魔术手v4.6.0.578绿色版
[动画] 西游记 (1999) 动画版 4K 全52集 高清修复版 童年回忆
[影视] 美国内战 4K蓝光原盘下载+高清MKV版/内战/帝国浩劫:美国内战(台)/美帝崩裂(港) 2024 Civil War 63.86G
[影视] 一命 3D 蓝光高清MKV版/切腹 / 切腹:武士之死 / Hara-Kiri: Death of a Samurai / Ichimei 2011 一命 13.6G
[影视] 爱情我你他 蓝光原盘下载+高清MKV版/你、我、他她他 2005 Me and You and Everyone We Know 23.2G
[影视] 穿越美国 蓝光原盘下载+高清MKV版/窈窕老爸 / 寻找他妈…的故事 2005 Transamerica 20.8G
[电影] 《黄飞鸿》全系列合集
[Android] 开罗游戏 ▎像素风格的模拟经营的游戏厂商安卓游戏大合集
[游戏合集] 要战便战 v0.9.107 免安装绿色中文版
[书籍] 彭子益医书合集 [PDF/DOC]
[资源] 精整2023年知识星球付费文合集136篇【PDF格式】
[系统]【黑果小兵】macOS Big Sur 11.0.1 20B50 正式版 with Clover 5126 黑苹果系统镜像下载
- 最新评论
-
找了好久的资源bjzchzch12 评论于:11-07 谢谢分享感谢ppy2016 评论于:11-05 谢谢分享感谢ppy2016 评论于:11-05 怎么没有后续闲仙麟 评论于:11-03 怎么没后续闲仙麟 评论于:11-03 有靳东!嘻嘻奥古斯都.凯撒 评论于:10-28 流星花园是F4处女作也是4人集体搭配的唯一一部!奥古斯都.凯撒 评论于:10-28 找了好久的资源,终于在这里找到了。感谢本站的资源和分享。谢谢AAAAA 评论于:10-26 找了好久的资源,终于在这里找到了。感谢本站的资源和分享。谢谢password63 评论于:10-26 找了好久的资源,终于在这里找齐了!!!!blog001 评论于:10-21
- 热门tag