首页 > 其他分享 >如何使用Gatsby创建自己的博客

如何使用Gatsby创建自己的博客

时间:2022-10-07 17:15:53浏览次数:69  
标签:Gatsby 创建 博客 blog gatsby pages gh

首发于Enaium的个人博客


首先使用npm安装gatsby,使用gatsby –version命令可以查看是否安装

npm install -g gatsby-cli

使用new命令后面跟着目录名,即可创建一个gatsby项目

gatsby new website

使用develop参数即可启用gatsby服务

gatsby develop

进入到8000端口后即可访问默认的页面,不过本文章是创建个人博客

Snipaste_2022-09-28_09-38-35.png

在创建项目时后面跟着一个github地址,这个是gatsby官方的一个博客模板

gatsby new blog  https://github.com/gatsbyjs/gatsby-starter-hello-world   

Snipaste_2022-09-28_09-46-26.png

这个是项目的目录结构

C:.
├─content
│  └─blog
│      ├─hello-world
│      ├─my-second-post
│      └─new-beginnings
├─src
│  ├─components
│  ├─images
│  ├─pages
│  └─templates
└─static

content下主要是markdown文件,但如果要被识别为blog还需要在blog里创建markdown文件

主要看blog里都有哪些文件,每个文件夹下都有一个index.md文件,这里会根据文件夹的名称来决定地址名是什么

C:.
├─hello-world
│      index.md
│      salty_egg.jpg
│
├─my-second-post
│      index.md
│
└─new-beginnings
        index.md

这里可以直接在blog中创建markdown文件,地址名就是markdown文件名

每个markdown文件的前几行都会有用3个横杠抱起来的内容,这个就是Front-matter格式,博客的信息都会从这里获取,title是博客的标题,date是发布时间,description是描述,其中时间必须遵守正确的格式

---
title: "如何使用Gatsby创建自己的博客"
date: 2022-09-28T11:16:00+0800
categories: javascript
---

现在来介绍如何使用GitHub的pages服务,首先需要在项目下安装gh-pages

npm install gh-pages --save-dev

在项目的gatsby的config文件中添加pathPrefix,这里选择没前缀

module.exports = {
  pathPrefix: "/"
}

在scripts中添加deploy,意思就是让gatsby生成页面,随后用gh-pages将public的目录中所有文件推送到项目的gh-pages分支中,使用npm run deploy即可部署到GitHub中

"scripts": {
    "deploy": "gatsby build --prefix-paths && gh-pages -d public"
}

进入到项目的setting页面,选择左侧的pages,将分支选为gh-pages这个分支

如果需要没有自己的域名就把仓库设置为这个格式,注意的是GitHub的用户名而不是昵称,如果有自己域名那就让域名解析CNAME到这个地址中,并且在项目的static目录下创建CNAME文件,填入你的域名

标签:Gatsby,创建,博客,blog,gatsby,pages,gh
From: https://www.cnblogs.com/Enaium/p/16760064.html

相关文章

  • vite创建vue3+ts项目
    vite创建vue3+ts项目为何选择vite:vite是一个基于Vue3单文件组件的非打包开发服务器,它做到了本地快速开发启动:快速的冷启动,不需要等待打包操作;即时的热模块更新,替换性能......
  • 博客2
    目录附件一、可行性研究报告1引言1.1编写目的1.2背景1.3定义1.4参考资料2可行性研究的前提2.1要求2.2目标2.3条件、假定和限制2.4进行可行性研究的方法2.5评......
  • 第一天博客纪念
    第一日博客纪念今天是第一天使用博客园,故发此随笔以作纪念。没有内容也不行,所以这篇随笔就解决一个小问题吧。问题:去掉数组中的重复项(限javascript)vararr=[1,1,......
  • linux创建新用户后,只显示$符号的修改办法
    背景创建了一个用户useraddxpw创建完之后,切换到用户xpw,发现,窗口只显示$了 解决方案切换到rootvi/etc/passwd找到xpw这一行,把bin/sh改成bin/bash保存......
  • Azure DevOps Server 2022新功能:禁止用户管理自己创建的分支(mange-permission)
    在之前版本的AzureDevOpsServer(之前名为TFS)中,如果用户拥有创建分支的权限,则对自己创建的分支具有管理权限(manage-permission),可以为自己创建的分支授予其它成员推送代码的......
  • 搭建一个Hexo个人博客系统
    0x01前言虽然说前两天折腾了一下博客园(自己之前也有做过自己的博客,奈何维护费用太贵了,真的消耗不起,钱要花在刀刃上。)网上有些教程有些参差不齐,今天给自己的真实搭建过程......
  • 基于.NetCore开发博客项目 StarBlog - (18) 实现本地Typora文章打包上传
    前言九月太忙,只更新了三篇文章,本来这个功能是从九月初就开始做的,结果一直拖到现在国庆假期才有时间完善并且写文章~之前我更新了几篇关于Python的文章,有朋友留言问是不......
  • Vue脚手架创建
    1、安装脚手架的包npminstall-g@vue/cli,通过vue--version检查版本检查版本2、切换到创建项目的目录,然后使用命令创建项目vuecreatexxx3、项目配置 eslint:语法检......
  • 修改博客的鼠标图标
    修改博客的鼠标图标——默认的鼠标样式和PC机一样,没有一点心意,美化我们的鼠标“迫在眉睫”参考博文:>> 博客园自定义鼠标美化-yyyz-博客园(cnblogs.com) <<修改方......
  • 分区索引快速创建
    较大的分区表在创建索引的时候是一件非常痛苦的事情,执行过程很漫长,会使用大量的资源。到新的工作地点后,数据治理的同事给了一个非常好的案例,首先创建一个unusable的索引,这......