blogit

package module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 28, 2021 License: MIT Imports: 13 Imported by: 0

README

blogit

Test Go version PkgGoDev codecov License

静态博客生成工具

安装

常用平台可以从 https://github.com/caixw/blogit/releases 下载,并将二进制文件放入 PATH 即可。

如果不存在你当前平台的二进制,可以自己编译:

git clone https://github.com/caixw/blogit.git
cd blogit
./build.sh
docker

目前 docker 同时托管于 docker.ioghcr.io,可通过以下方式获取相应在的容器:

docker pull docker.io/caixw/blogit:latest

docker pull ghcr.io/caixw/blogit:latest

使用

testdata/src/ 下包含了一个完整的数据源,你可以直接复制该目录下的内容稍作修改, 即可以当作自己的博客数据源。

在预览模式下,文件类型的值取决于文件的后缀名或是在没有后缀名的情况下由内容决定。 而文件后缀名与文件类型的关联数据库,由操作系统决定,在不同系统下会有所偏差。

如果你的网站部署在 github 的话,可以直接使用 action 实现全程自动化编译上传代码。

github action
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - name: checkout source
      uses: actions/checkout@v2
      with:
        repository: owner/src
        path: src/

    - name: checkout dest
      uses: actions/checkout@v2
      with:
        repository: owner/dest
        path: dest/
        persist-credentials: false # github-push-action@master 需要这个
        fetch-depth: 0 # # github-push-action@master 需要这个

    - name: build static site
      uses: caixw/blogit@master
      with:
        src: src
        dest: dest

    - name: commit files
      uses: EndBug/add-and-commit@v7
      with:
        author_name: github-actions
        author_email: 41898282+github-actions[bot]@users.noreply.github.com
        cwd: dest/
        push: false
        message: 'docs: add changes'

    - name: push changes
      uses: ad-m/github-push-action@master
      with:
        directory: dest/
        github_token: ${{ secrets.GITHUB_TOKEN }} # 确保有相应的权限
        branch: ${{ github.ref }}

secrets.GITHUB_TOKEN 关联的 PAT 需要有写入 owner/dest 指向的仓库的权限。

参数
名称 类型 必填 默认值 描述
src string true src 源文件的路径
dest string true dest 编译后的路径

版权

本项目采用 MIT 开源授权许可证,完整的授权说明可在 LICENSE 文件中找到。

Documentation

Overview

Package blogit 依赖于 git 的博客系统

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Build

func Build(src, dest string) error

Build 编译并输出内容

dir 表示源码目录; dest 表示输出的目录;

func Serve

func Serve(src, addr, path string, l *log.Logger) error

Serve 运行服务

如果 l 不为 nil,则会在此通道上输出访问记录;

func ServeTLS

func ServeTLS(src, addr, path, cert, key string, l *log.Logger) error

ServeTLS 运行服务

如果 l 不为 nil,则会在此通道上输出访问记录;

func Version

func Version() string

Version 版本号

Types

type Watcher

type Watcher struct {
	// contains filtered or unexported fields
}

Watcher 热编译功能

func Watch

func Watch(src, base, cert, key string, info, erro, succ *log.Logger) (*Watcher, error)

Watch 热编译

src 源码目录,该目录下的内容一量修改,就会重新编译; base 网站的根地址,会替换配置文件中的 URL, 一般为 http://localhost,同时也会作为服务的监听地址。 如果是以 https:// 开头的,那么需要提供 cert 和 key 两个参数; cert 和 key 表示 https 模式下对应的证书; info, erro, succ 为各类型的日志输出通道,可以为空,表示该类型的信息将会被忽略。

func (*Watcher) Watch

func (w *Watcher) Watch() error

Watch 监视变化并进行编译

Directories

Path Synopsis
cmd
blogit
静态博客网站生成工具 可通过 blogit 查看具体的子命令。
静态博客网站生成工具 可通过 blogit 查看具体的子命令。
internal
builder
Package builder 提供编译成 HTML 的相关功能
Package builder 提供编译成 HTML 的相关功能
cmd
Package cmd 提供命令行相关的功能
Package cmd 提供命令行相关的功能
data
Package data 对加载的数据进行二次加工
Package data 对加载的数据进行二次加工
loader
Package loader 加载数据内容 仅加载各个模块的自身的数据,并判断格式是否正确。
Package loader 加载数据内容 仅加载各个模块的自身的数据,并判断格式是否正确。
utils
Package utils 提供通用函数
Package utils 提供通用函数
vars
Package vars 提供各种代码级别的配置项
Package vars 提供各种代码级别的配置项

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL