在Windows环境下使用hexo搭建博客以及部署到gitee / github
<p><strong>环境搭建</strong></p><h2 id="安装git">安装git</h2>
<p>1).下载:从官网下载windows版本的git<br>
下载地址:<br>
https://git-scm.com/download/win<br>
2).安装:双击安装,一直点击下一步即可</p>
<p>自定义安装报错:'git' 不是内部或外部命令,也不是可运行的程序 或批处理文件。<br>
我的电脑右键-》属性-》高级系统设置-》环境变量-》在系统变量中找到path-》新建-》输入自己git.exe的路径;<br>
我的如下:示例:</p>
<pre><code>D:\git\Git\bin//bin可执行文件目录
</code></pre>
<p><img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172239727-1734131001.png" alt="" loading="lazy"></p>
<h2 id="安装nodejs">安装node.js</h2>
<p>1).下载:从官网下载windows版本的node.js安装包(.msi后缀)<br>
下载地址:<br>
https://nodejs.org/zh-cn/download/<br>
2).安装:双击安装,一直点击下一步即可<br>
node可以自定义安装,可以默认安装,npm命令就在nodejs文件下</p>
<h2 id="安装hexo">安装hexo</h2>
<pre><code>npm install hexo-cli -g
</code></pre>
<h3 id="初始化blog">初始化blog</h3>
<p>首先cd到你要放你的博客的文件夹,然后创建并初始化博客文件夹blog</p>
<pre><code>$ hexo init blog
</code></pre>
<h3 id="初始化完成后会出现默认主题和默认文章-helloworld运行以下命令测试运行">初始化完成后会出现默认主题和默认文章-Helloworld,运行以下命令测试运行</h3>
<p><code>hexo generate</code><br>
<img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172315607-245131826.png" alt="" loading="lazy"></p>
<h3 id="启动blog本地查看">启动blog:本地查看</h3>
<p>生成完成后,文件夹中会出现一个public的文件夹,public的文件夹是hexo生成的一个完整的静态网站,是我们的默认博客。开启一下服务器浏览博客,运行命令:</p>
<pre><code>$ cd blog
$ hexo server
</code></pre>
<p>至此,本地blog已经创建完成,默认通过127.0.0.1:4000访问。<br>
如果你不喜欢默认主题,可根据下面介绍换上其他漂亮的皮肤</p>
<h3 id="选择主题">选择主题</h3>
<p>可以在hexo官网查看自己喜欢的主题<br>
通过git clone themes/xxx 将主题克隆到本地,<br>
修改 <code>_config.yml</code> 中的theme:xxx 在最后一行<br>
然后再</p>
<pre><code>hexo clean && hexo g && hexo s
// g就是generate缩写d就是deploy 远程部署
</code></pre>
<p>本地重载,就可以再localhost:4000查看部署情况</p>
<h2 id="如何写文章">如何写文章</h2>
<p>文章在 <code>myblog/source/_posts/</code> 下,以markdown格式写成,笔者推荐使用<code>atom</code>作为写作工具。<br>
可以通过 <code>hexo new 文章名</code> 来创建一篇文章,当然也可以直接在 <code>_posts</code> 目录下直接新建.md文件。<br>
执行命令 仍是在 <code>myblog</code> 目录下,打开 <code>git bash</code> 命令框。以下是常用命令,其他可以查阅官网。</p>
<pre><code># 创建一个标题为“git教程”的文章
$ hexo new "git教程"
# 清除所有渲染的页面
$ hexo clean
# 将markdown渲染成页面
$ hexo g
# 启动hexo
$ hexo s
</code></pre>
<h2 id="远程部署--搭建github-pages">远程部署--搭建github pages</h2>
<p>局域网blog已经搭建完成,但是我们想让网上所有人都可以看到我们的文章,怎么办呢?<br>
又不想自己搭建服务器,别急,这时候就轮到github pages出场了</p>
<h3 id="注册github账户">注册github账户</h3>
<p>到github官网注册一个github账户</p>
<h3 id="配置登录免密码">配置登录免密码</h3>
<p>移步 Git之SSH与HTTPS免密码配置</p>
<h3 id="创建github远程仓库">创建github远程仓库</h3>
<p>在github上创建一个仓库 <code>xxx.github.io</code> xxx为自己的github用户名</p>
<h3 id="配置hexo">配置Hexo</h3>
<p>修改 <code>_comfig.yml</code>,xxx为你的用户名</p>
<pre><code>deploy:
type: git
repo: git@github.com:xxx/xxx.github.io.git
branch: master
# “type:”、“repo:”和“branch:”后都要带一个空格
</code></pre>
<h3 id="安装git部署插件">安装git部署插件</h3>
<pre><code>$ npm install hexo-deployer-git --save
</code></pre>
<h3 id="推送服务器">推送服务器</h3>
<pre><code>$ hexo deploy
</code></pre>
<h3 id="测试">测试</h3>
<p>打开 <code>xxx.github.io</code> ,就能看到你的blog了</p>
<h2 id="远程部署--搭建gitee-pages">远程部署--搭建gitee pages</h2>
<p>https://blog.csdn.net/qq_44994842/article/details/104286549</p>
<p>部署到 github / gitee<br>
这里使用gitee ,github国内访问慢<br>
打开gitee官网<br>
点击打开<br>
先 : 注册或者登陆<br>
完了之后进入主页<br>
<img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172439933-923165509.png" alt="" loading="lazy"><br>
<img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172459094-2122772931.png" alt="" loading="lazy"></p>
<p>这个公钥的作用就相当于本地和gitee的一个通关证,以便于下次传到gitee时,不用输入密码什么的<br>
启动gitee page 这页面就发布文件的地方</p>
<h3 id="配置文件">配置文件</h3>
<p><img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172544021-1959862782.png" alt="" loading="lazy"></p>
<p>点击根目录下的config.yml文件<br>
<img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172549309-55450121.png" alt="" loading="lazy"></p>
<p>注意这个地方格外注意的是</p>
<pre><code>#URL
##If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://martinniee.gitee.io/
root: /
</code></pre>
<p>上述说明中提到可以自定义名称,只需要在root字段修改即可,然而这里有两个容易出问题的地方:</p>
<p>你的URL并不是你所在仓库的地址,而应该是你启动仓库的Gitee Page服务后分配给你的网站静态域名,以我个人为例,仓库地址为:https://gitee.com/用户名/仓库名(我新建的网站名称与Gitee账号同名),而网站URL应为“服务–Gitee Page”启动/更新后显示的网站地址:https://仓库名.gitee.io<br>
你的网站目录当然可以和账户不同名,但是那样就需要按照文档说明修改root字段,自己当初定义的名称不同,结果导致域名莫名无法解析,总是无法正确访问网页,因此干脆像GitHub Page一样强制要求使用账号同名新建网站仓库,这样还获得了以账号名为特征的独有域名,一举两得!</p>
<h3 id="坑1">坑1</h3>
<pre><code>#Deployment
##Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: git@gitee.com:martinniee/martinniee.git
branch: master
</code></pre>
<p>注意每个:后面都要有一个空格<br>
Git部署目录不是仓库地址!<br>
这里的repo: xxxxx<br>
xxxx是生成仓库后的克隆/下载ssh或者https路径<br>
而不是这个仓库的路径 https://gitee.com/用户名/仓库名<br>
所以<br>
如果使用ssh方式</p>
<ul>
<li>应该是 git@gitee.com:用户名/仓库名.git</li>
</ul>
<p>使用https方式</p>
<ul>
<li>应该是 https://gitee.com/用户名/仓库名.git</li>
</ul>
<p><img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172620473-1989798509.png" alt="" loading="lazy"></p>
<h3 id="坑2-新建仓库与gitee不同名导致无法正确解析">坑2 新建仓库与Gitee不同名导致无法正确解析</h3>
<p>url地址不是创建仓库的地址,而是在gitee page 页面启动后生成的最后用来访问个人博客的网址为<br>
<img src="https://img2020.cnblogs.com/blog/1765210/202006/1765210-20200627172631327-1521420388.png" alt="" loading="lazy"></p>
<p><strong>如果使用 ssh</strong><br>
<strong>就是</strong><br>
type: git<br>
repo: ssh地址</p>
<p><strong>如果是使用https形式</strong><br>
<strong>就是</strong><br>
type: https<br>
repo: https地址<br>
完成之后,保存<br>
在命令行窗口切换到根目录<br>
执行</p>
<pre><code>hexo clean
hexo g
hexo d //部署到gitee远端
</code></pre>
<p>你会发现部署失败<br>
我要部署到远端之前还要下载git插件<br>
执行</p>
<pre><code>npminstall --save hexo-deployer-git
</code></pre>
<p>安装好之后再执行吧<br>
执行 hexo d之后<br>
第一次要验证ssh<br>
执行</p>
<pre><code>git pull
</code></pre>
<p>输入用户名和密码<br>
再次执行</p>
<pre><code>hexo d
</code></pre>
<p>好了<br>
到浏览器输入静态网站网址吧</p>
<p>Hexo+Git服务器搭建全自动blog发布平台<br>
Hexo+GitHubPages搭建属于自己的blog</p>
<p>git系列往期文章<br>
Git常用命令及使用心得<br>
手把手教你搭建git服务器<br>
Git之SSH与HTTPS免密码配置<br>
一个客户端设置多个GitHub账号</p><br><br>
来源:https://www.cnblogs.com/forforever/p/13199026.html
頁:
[1]