参与贡献
SnarkOS 贡献

SnarkOS 贡献指南

本清单提供了使用合并的新功能重启 Aleo 网络的分步指南。遵循这些步骤以确保流程顺利进行。

分支概览​

staging 分支 (opens in a new tab)

  • 该分支作为集成和初步测试变更的暂存区域,在将变更推升到主网分支之前使用。

mainnet 分支 (opens in a new tab)

  • 生产环境分支,仅合并经过充分验证的稳定变更。用于创建生产版本发布。始终是某个 staging 提交的直接镜像。

网络概览​

开发网络(DevNet)​

  • 初步提议的变更在开发网络上实现和测试。
  • Snarkops — 旨在为 SnarkOS 管理和参与 ANF 的 CanaryNet 提供指南和脚本。

CanaryNet(运行 staging 分支)​

测试网 Beta 版(运行 mainnet 分支)​

主网(运行 mainnet 分支)​

贡献工作流[snarkOS]​

snarkOS 贡献流程图

1. Fork 仓库

  • 从 staging 分支 Fork 仓库到自己的 GitHub 账户。
  • 在本地克隆 Fork 后的仓库。
git clone git@github.com:AleoNet/snarkOS.gitgit remote add upstream git@github.com:AleoNet/snarkOS.git

2. 切换到基础分支

git switch staging

3. 创建功能分支

  • 从 Fork 仓库的主分支创建功能分支。
git checkout -b feat/my-branch

4. 开发你的功能/修复并测试

  • 在 Fork 的仓库中开发你的功能或修复。
  • 运行 ./snarkOS/devnet.sh
  • 确保批准重新安装 snarkOS 二进制文件的选项,这样你可以使用当前本地的 snarkOS 代码进行测试。
  • 查看网络是否正常生成区块,发送一些交易以进一步确认网络稳定性。
  • 运行针对你的功能/修复的任何特定测试。

5. 推送代码到功能分支

  • 提交包含有意义的提交信息的变更,清楚地描述变更及其目的。
  • 推送变更到你的 Fork。
git add .git commit -m "Add detailed description of the changes"git push

6. 提交 PR 到 Fork 的主分支

  • 从功能分支提交拉取请求(PR)到 Fork 仓库的主分支。
  • 这将触发 Fork 中的 CI 流程管道以运行自动化测试。

7. 内部代码审核

  • 在 Fork 仓库内向团队请求内部代码审核。
  • 团队成员审核代码、提出建议,如果符合质量标准则批准 PR。
  • CI 流程管道再次运行以确保在审核过程中未引入新问题。

8. 提交 PR 到主 AleoNet/snarkOS 仓库

  • 获得内部批准后,从 Fork 的主分支向主 AleoNet/snarkOS 仓库的 staging 分支提交 PR。
  • 这将触发主 CI 流程管道运行所有相关测试和检查,再次确保代码的稳定性和兼容性。

9. 核心团队审核

  • 核心团队成员在主 AleoNet/snarkOS 仓库中审核 PR。
  • 如果 CI 流程管道通过且审核成功,PR 将被批准。