Skip to main content

非程序员如何贡献文章

本文档的目的在于简化非程序员参与 ic123 的流程。

目前 ic123 的流程偏程序员。团队目前没有资源为 ic123.xyz 实现一个交互式的前端:登录 + 在线文件编辑。这里我们编写了此文档用来引导非程序员参与到 ic123

基本要求

GitHub 账号 + 基本的 Markdown 文件编辑

GitHub

目前的流程下,您需要一个 GitHub 账号。因为 ic123.xyz 的源文件都是托管在 GitHub 上,所以向 ic123.xyz 添加、修改内容唯一的方式就是向 ic123 发起 pull requests。

注册账号

如果您还没有 GitHub 账号,请参考如何注册 GitHub 账号

Fork

Fork 操作就是在您的 GitHub 账号下,创建一个 ic123 的拷贝仓库,关于 Fork 的具体介绍可以参考 GitHub 的官方文档

当您注册好 GitHub 账号后,请进入 ic123 进行 Fork 操作,如下图所示。

fork-1

点击 Fork 后,会跳出如下界面。

fork-2

Choose an owner 对话框,选择您前面注册好的 GitHub 账号,其他配置不用修改,点击 Create fork 创建分叉。如下就是 Fork ic123 创建的一个仓库示例。

fork-3

通常以上的 GitHub 账号注册、Fork 这两步操作只需完成一次。

编辑

至此,通常程序员会选择:

  1. 本地安装好 git,配置 sshkey;
  2. 将 Fork 后的仓库 Clone 到本地;
  3. 在本地编辑器中编辑;
  4. 通过 git 命令将改动推送到 GitHub 仓库。

但这些步骤对于非程序员来说比较麻烦,也很难配置,不过 GitHub 提供了在线文档编辑可以一定程度解决这个问题。

编辑文件

找到您想编辑的文件,点击如下所示的编辑按钮。

edit-1

编辑之后,请点击 Preview 进行预览,确保改动正确。具体如何编辑请参考 Markdown 文件编辑

edit-2

最后点击 Commit changes,将改动提交到仓库。

edit-3

添加文件

可以通过如下所示的 Add file 来添加文件。

add-1

需要注意的是:请先进入到你想要添加的目录之后再添加文件。

比如你想要在 ic123/docusaurus/blog 目录下添加文件,请先浏览到该目录,再进行 Add file 操作。

add-2

为了规则统一,也为了避免一些工具对空格支持不太好,这里关于文件名有如下要求:

  1. 采用英文
  2. 小写
  3. 空格请用 - 替代。

添加目录

如果您想将您新增的文件放在一个新目录下,请按下述步骤进行操作,以 ic123/test/test.md 为例。

  • 在输入文件名时,先输入您要创建的目录;
  • 当您输入路径分隔符 / 的时候,GitHub 会检测到并为您创建新的目录。比如输入 test/,会出现如下图所示的结果。

add-3

发起 Pull Request

当您在 forked 仓库上完成修改后,就可以发起 PR (Pull Request) 将您的改动提交回 ic123 。发起 PR 的界面如下图所示。

pr-1

点击弹出的 Open pull request 发起 PR,如下图所示。

pr-2

这个页面的参数配置如下:

  • base repository: 选择 ic123-xyz/ic123
  • base: 选择 main
  • head repository: 这里就是你 fork 的仓库
  • compare: 就是你的 main branch

也请认真填写 PR 的 titledescription,以帮助 reviewers 更好的审阅您的 PR。

完成以上步骤后请点击 Create pull request 最终完成 PR 的发起过程。

同步 Fork

ic123 处于开发过程中,它的改动会比较频繁,这也意味着您 Fork 的仓库可能与 ic123 并不同步。这里建议当您想添加内容、并发起一个 PR 之前,可以先同步 ic123,以减少冲突的可能性。同步的方法如下图所示。

sync-1

Markdown 文件编辑

当您熟悉了 GitHub 的操作之后,需要了解的是如何进行 Markdown 文件的编辑。ic123 的内容都采用 Markdown 文件来编写,docusaurus 文档工具会自动将 Markdown 文件转换为对应的 html 文件。

Markdown 是一种轻量级标记语言,本身并不复杂。关于如何编写 Markdown 的指南有很多,例如:

  1. Markdown 的官方文档
  2. Markdown 菜鸟教程

Markdown 编辑器

支持 Markdown 文件的编辑器也很多,比如 Obsidian、面向程序员的 Visual Studio Code 等,可以参考该文档来选择您熟悉的工具进行编辑。