#5快速开始

lencxlencx2023/11/08

步骤

Step1:fork 项目

点击项目 右上角的 Fork 按钮,fork 后,可以对仓库进行重命名,修改成自己喜欢的名称。

重命名(可选操作):

  1. 访问 https://github.com/<owner>/<repo>/settings
  2. General -> Repository name -> Rename

⚠️ 注意:强烈推荐使用 fork 方式,不要对仓库 main 分支代码进行改动,这样可以和上游仓库代码始终保持一致,在升级时,可以快速同步,降低个人的维护成本。

Step2:开启 Discussions

Repo -> Settings -> General -> Features -> Discussions

Step3:创建配置

在 Discussions 中新增一个标题为 rgd.yml 的 issues,并在评论框中输入以下代码:

```yml
### 必须配置
# github 用户名,支持个人或组织
owner: lencx
# github 仓库名称
repo: gg

### 可选配置,如果 type 为 `issues` 类型,才需要以下配置
# type: `issues` | `discussions` | `discussions2`, default is `discussions`
# discussions:表示需要写 discussions 的仓库与 fork 此项目的仓库为同一个
# discussions2:表示需要写 discussions 的仓库与 fork 此项目的仓库彼此独立
type: issues
issues-owner: <github_owner>
issues-repo: <github_repo>
# state: `open` or `closed`, default is `all`
issues-state: closed

### 可选配置,如果 type 为 `discussions2` 类型,才需要以下配置
# type: `issues` | `discussions` | `discussions2`, default is `discussions`
type: discussions2
# 写 discussions 的用户名及仓库名
dis-owner: <github_owner>
dis-repo: <github_repo>

### 域名配置
# 个人域名,如果没有则不需要设置
# 默认使用 github 二级域名,即 https://<owner>.github.io/<repo>
cname: gg.nofwl.com

### website 配置
website:
  # 1. 格式为 png 的 240x240 正方形图片
  # 2. 在线图片 URL 地址,不设置则使用默认 logo
  logo: https://user-images.githubusercontent.com/16164244/162659556-64dd7da8-321f-4525-bbbf-975f02b4800f.png
  # 网站标题
  title: GG
  # 网站描述
  description: A gatsby website builder based on github discussions

### PWA Manifest 配置
# https://www.gatsbyjs.com/plugins/gatsby-plugin-manifest
manifest:
  name: GG
  short_name: GG
  start_url: /
  background_color: '#fafafa'
  theme_color: '#232629'
  display: standalone
  # 1. 格式为 png 的 240x240 正方形图片
  # 2. 在线图片 URL 地址,不设置则使用默认 logo
  icon: https://user-images.githubusercontent.com/16164244/162659556-64dd7da8-321f-4525-bbbf-975f02b4800f.png
```

配置参考:

Step4:生成 Token

生成 Token

New personal access token

  1. Note - 备注随便输入,主要做标识
  2. Expiration:No expiration - 过期时间看需要,这里选择不过期
  3. Select scopes: workflow - 只需要勾选 workflow
  4. 点击 Generate token 按钮,然后复制生成好的 Token

Step5:设置 Secrets

Repo -> Settings -> Secrets -> Actions -> New repository secret

GG_TYPEissues 时,才需要下面的变量配置:

  1. GG_TYPE
    • Name: GG_TYPE
    • Value: issues
  2. GG_ISSUES_OWNER:GG_TYPEissues 时,此字段必须
    • Name: GG_ISSUES_OWNER
    • Value: <github_owner>
  3. GG_ISSUES_USER:GG_TYPEissues 时,此字段必须
    • Name: GG_ISSUES_REPO
    • Value: <github_repo>
  4. GG_ISSUES_STATE:可选,如果未设置则包含 OPENCLOSED 的 issues
    • Name: GG_ISSUES_STATE
    • Value: CLOSED

GG_TYPEdiscussions2 (部署网站的仓库与 discussions 数据不在一个仓库)时,才需要下面的变量配置:

  1. GG_TYPE
    • Name: GG_TYPE
    • Value: discussions2
  2. GG_DIS_OWNER:GG_TYPEdiscussions2 时,此字段必须
    • Name: GG_DIS_OWNER
    • Value: <github_owner>
  3. GG_DIS_REPO:GG_TYPEdiscussions2 时,此字段必须
    • Name: GG_DIS_REPO
    • Value: <github_repo>

自定义域名

如果没有域名则不需要设置,默认使用 github 二级域名,即 https://<owner>.github.io/<repo>

自定义域名以阿里云为例:
CNAME

构建

  • 提交代码会触发构建(🙅🏻‍♂️不推荐,会和上游仓库产生冲突,无法拉取最新代码)
  • 每隔一小时会自动构建一次(💁🏻‍♂️ 默认,首次创建仓库需要先启用 workflow)
  • 手动触发构建(🙋🏻‍♂️ 想要部署到网站预览,可以点击 Re-run all jobs 按钮来部署)

在 Fork 项目后,点击 Actions Tab 项,在 All workflows 中选择 github pages点击 Enable workflow,每隔一小时会自动触发一次构建。当自动构建过一次之后,会在 github pages 下产生记录,点击最新一条记录,会看到 Re-run all jobs 按钮,点击它就可以手动执行构建。

enable workflow

workflow

workflow