在研究搭建网站的过程中,踩了很多坑,但是这个教程,感谢大佬的经验和教程,这里仅供参考
人间四月芳菲尽,山寺桃花始盛开
本部分为利用GitHub搭建个人博客的基础篇
1、注册GitHub,创建blog仓库
注册GitHub就像注册任意网站一样,注册完成后进入GitHub网站,点击 Sign up ,输入用户名,账号,密码进行登录,完成账户验证。
登录账户后,我们需要创建一个自己的项目用来存储自己的项目,点击 + New repository创建一个新项目,填写Reposity name ,点击 Create repository.就完成的项目的创建,但是需要注意项目我们暂且选择 public 。
2、安装git
Git 的安装可以去官网安装,具体的步骤按照配置一步一步来
安装完毕后,打开 Git Bash 的快捷方式,我们需要在本地创建一个 ssh key,这个目的就是在电脑上生成一个密钥,获取之后,在Github上绑定,就可以把电脑和github进行连接
这样,我们就可以快捷、方便的保存自己本地的文件到GitHub上面,同时生成网站内容。
//输入下面的代码,生成一个密钥(将双引号里面的邮箱改为自己注册 Github 时的邮箱):
$ ssh-keygen -t rsa -C "email@xxx.com"
成功的话应该是这个样子的
注意:
在第二个回车后显示Overwrite(y/n): ,这里需要手动输入y,然后就会在.ssh目录下生成一个 id_rsa.pub 文件,这个文件就是我们需要的密钥
我们可以用记事本打开id_rsa.pub文件,文件应该是这样的
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCstJyKgExKe4rkqRui+AZVRffsPMUuZS7ObYwnBcWgCasP5PqyQt0fzaaxEUe1GgV3dKGOe9b9Sa8D3Pvha1/LJ+X9WaF8FLNiqqIZA+CmH/zfNZU0fM4auwZ10PBkgAjy2/J7W/WkDj+ImI+SBhOZNf8/lp6EreAfpcJ8S705NVxhP2aIKYIVWys9aMvyE9n7yKrGKeE2eAAQj8oOWITXqkpJBkqrr0o3dr2Rw8GeA4Z2el6AT5YSIvh/8BLVHBjZrpA/RFFYdD56oKpsqvzB9cieMnJv/xXWdgQS1EitYEaT7qC9Vp2yZlN0NMQn6POLKHlh6ly4LlnfbdbVpKKNrbkqDpY3X0kGQURnF5cdcdJEkZMxgdmYapodilNCg4n22ckENyiv2BXQTtvXAFuDA+EW52deF9U6RWd0s6rwgVCCbeWLiiw9YxGay0QRczVwm6lHwBMhiR0SxxffMUC1XACoOUxeWTanVEmzcCyQ9s= emaile@email.com
下面我们需要回到浏览器将我么得到的SSH密钥绑定到GitHub上面
进入GitHub 的设置中的 SSH and GPS keys,新建一个SSH keys,标题随意,key的内容就是将刚才复制的id_rsa.pub的文件内容复制进去,然后点击 Add SSH key.
回到本地的GIT窗口输入如下代码,验证是否成功,是否成功将本地和GitHub进行链接
$ ssh -T git@github.com
连接成功会出现successfully的提示
成功之和,输入下面的代码,绑定自己的GitHub账号,到此为止,本地就已经与GitHub进行成功连接了(将用户名和邮箱替换为自己注册时的Email)
git config --global user.name "XXXX" git config --global user.email "XXX@gmail.ocm"
3、安装VS Code
安装VS Code可以在官网进行安装,选择自己的版本进行安装(windows/Linux/mac),如果不熟悉,可以搜索教程,或者一路安装。
安装成功后打开软件,点击Extensions 安装需要的插件
gpm
用来管理 Github 上的文件。 必备Markdown All in One
使用 Markdown 写作的利器。必备Chinese Language Pack for Visual Studio Code
VS Code 的汉化插件。 推荐Auto Rename Tag
如果涉及修改代码的时候,非常好用。推荐Material Icon Theme
一套个性的图标主题。 推荐
进入GitHub选择刚才建立的blog项目,复制https链接,在VS Code中左边的Project Management(项目管理)中,点击 + 粘贴,回车。
注意:这个方法可能会出现错误
Cannot read properties of undefined (reading 'git')
这样子,根据搜索的原因,大概是
1、科学上网
2、软件问题
所以,下面我又提供了新的一个方法
文件-新建窗口-克隆git仓库,将从GitHub项目复制的仓库地址填入上方的检索框,发现出现了我们的仓库。
之后选择GitHub项目的本地存储位置,这样,就成功在本地建立了项目,在vs Code中可以查看本地的项目。
选择存储位置后 会自动新建一个blog文件夹(与GitHub项目同名)
注意:
部分情况可能会出现权限不够的情况,会出现报错,,所以这个时候需要更改自己文件夹的权限,改为 完全控制
在选定的存储文件夹内
右键-属性-安全-编辑-勾选完全控制 确认-确认-保存即可
4、安装博客
为了让站点的主题更好看可以配置自己的主题,这里推荐
The world’s fastest framework for building websites | Hugo (gohugo.io)https://gohugo.io/内置许多hego的精美主题。
将主题下载到本地后,解压打开复制到我们上面存储项目的blog文件夹中
解压后的文件大致有
5、配置博客
将主题数据复制到项目文件后,我们需要配置自己的博客
回到Vs Code ,打开资源管理器(项目管理,右键自己的项目),就可以看到自己的项目,进行基本的配置和修改。
hugo的基本配置都在config.toml 文件中(可以在文件项目管理窗口搜索自己的项目,在VS code路径中打开),可以参考如下信息
title = "Dear"
#修改“”中的内容为自己的网站名字
baseURL = "https://github.com/minefsmile/minefsmile_blog"
#修改“”为自己的博客地址
languageCode = "en-us"
theme = ["github.com/theNewDynamic/gohugo-theme-ananke"]
resourceDir = "../resources"
DefaultContentLanguage = "en"
SectionPagesMenu = "main"
Paginate = 3 # this is set low for demonstrating with dummy content. Set to a higher number
googleAnalytics = ""
enableRobotsTXT = true
[languages]
[languages.en]
title = "Ananke"
weight = 1
contentDir = "content/en"
# languageDirection = 'rtl' for Right-To-Left languages
[languages.fr]
title = "Ananke Fr"
weight = 2
contentDir = "content/fr"
[sitemap]
changefreq = "monthly"
priority = 0.5
filename = "sitemap.xml"
[params]
text_color = ""
author = ""
favicon = ""
site_logo = ""
description = "The last theme you'll ever need. Maybe."
# choose a background color from any on this page: https://tachyons.io/docs/themes/skins/ and preface it with "bg-"
background_color_class = "bg-black"
recent_posts_number = 3
[params.valine] # 我把它默认甚至为关闭了,想打开可以修改 false 为 true,填写 valine 的 appId 和 appKey 即可开启 valine 的评论系统。(目前 valine 好评在下降,很多人更换了自己的评论系统,我还没有折腾,暂时不提供这部分教程了。想用的可以参考 <https://valine.js.org/> 操作手册)
enable = false
appId = ''
appKey = ''
placeholder = '既然来了,那就留个痕迹吧~哈哈哈哈'
visitor = true
[[params.ananke_socials]]
name = "twitter"
url = "https://twitter.com/GoHugoIO"
修改完成之后,点击左边侧栏的 源代码管理,在 消息框 中随便输入,例如 update ,点击勾。
点击同步,之后可能会有弹窗吗,需要关联自己的GitHub,在弹出的网页中同意关联即可。
注意:如果这个办法不可行,可以尝试进行推送,将代码上传到GitHub创建的blog项目中
但是推送的过程可能会报错。需要绑定自己的用户名和邮箱
在VS Code的终端输入
git config user.name "username"
git config user.email "useremail"
#将username和uyseremail替换为自己的
然后就可以同步上传了
如果再次进行修改的话,继续上面的上传,同时
点击VS Code窗口下边栏的同步,将代码修改同步到GitHub的项目中去
注意:在同步的过程中可能会出项报错
fatal: couldn't find remote ref main
- 一个解决方法是:科学上网
- 另一个是:
更改代理
继续在VS Code的项目终端输入
git config --global --unset http.proxy
git config --global --unset https.proxy
git commit #或 git clone
同步完成后点击GitHub新建的blog项目打开发现,已经上传好了
现在,网页进入自己的 Github 项目,就会发现,我们本地文件已经全部上传好了,但它还不是最终的博客形态,Hugo 是需要进行编译才能产生静态网站页面的工具,这部分工作,在下一小节我们交给 Github 自动完成。
6、配置GitHub Action实现自动化部署
新建 gh-pages 分支
在 主页Setting 中设置 token , 暂存。Note 也是随便写,勾选 repo
和 workflow
Generate token 后生成一个私钥,记得复制(若为aaa)
因为这个私钥只出现这一次
进项目 settings/secrets and avriables 点击 New reposutory secert 新建标题为 personal_token
,内容是刚创建的 tokens (aaa);
回到项目
点击 Action - Set up a workflow yourself
添加如下代码
name: Deploy Hugo # 任君喜欢
on:
push:
branches:
- master # master 更新触发
jobs:
build-deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: latest
- name: Build
run: hugo
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
personal_token: ${{ secrets.personal_token }} # 填写你自己的 personal_token
PUBLISH_BRANCH: gh-pages # 推送到当前 gh-pages 分支
PUBLISH_DIR: ./public # hugo 生成到 public 作为跟目录
commit_message: ${{ github.event.head_commit.message }}
Commit 提交,看看 Action 是不是成功了,再看看 gh-pages 静态文件是否更新,到此,你的独立博客就算搭建成功了,为了方便,可以重新在 VS Code 中下载一遍自己的项目,保证它们的同步。现在可以访问你的博客地址,欣赏一下自己的成果了。
哈哈哈哈哈哈哈哈,上面就是我的建设过程了,但是最后的成功就是443 no find 了
下面是我在搭建的过程中出现的一些问题
1、上传报错
remote: error: GH007: Your push would publish a private email address.
这是因为邮箱是私有的导致,解决方法
- 将邮箱公开
- 使用GitHub自带的公有邮箱
3、
同时非常感谢以下大佬的经验帖子
3、github pages gitee pages 配置教程、更新教程 (这个教程我试了没有用哈哈哈,但是很有道理)
4、GitHub创建Personal access tokens
7、Hugo+GithubPages+个人域名搭建博客教程(这是一个新的方法但是个人感觉不如上面那个)