菜单

对仓库的贡献

相关源文件

本文档概述了向 Apollo-11 仓库贡献的流程和指南。它提供了详细的说明,以确保贡献与原始源代码保持准确性,遵循正确的格式标准,并遵守仓库的质量指南。

有关仓库国际化工作的信息,请参阅国际化

贡献流程概述

Apollo-11 仓库包含指令舱 (Comanche055) 和登月舱 (Luminary099) 的数字化源代码。由于这些代码是手动从纸质打印件中数字化出来的,因此保持与原始材料的一致性对于历史准确性至关重要。

来源:CONTRIBUTING.md65-70

准确性指南

贡献的主要目标是确保数字化代码与原始纸质打印件完全匹配。这种历史保存需要仔细关注细节。

源材料参考

所有贡献都必须根据这些官方扫描件进行验证

一个基于网络的工具可用于轻松浏览这些扫描件,网址为:https://28gpc.csb.app/

验证流程

来源:CONTRIBUTING.md108-110 CONTRIBUTING.md113-142

注释验证

数字化代码中的注释必须与扫描件完全匹配,包括

  1. 印刷错误:如果原始扫描件中存在印刷错误,则必须将其保留在数字化代码中。如果数字化代码中存在但扫描件中不存在印刷错误,则必须予以纠正。

  2. 间距:注释中字符之间的空格应与扫描件匹配。通常情况下,

    • 新单词使用单空格
    • 新句子使用双空格
    • 缩进使用三空格
  3. 换行符:

    • 第 1 列带有 R0000 的换行符应与扫描件完全匹配
    • 第 1 列没有 R0000 的换行符应只包含连续的 1 或 2 个空行
    • 如果连续空行超过 2 行,则应删除多余的空行

来源:CONTRIBUTING.md113-163

格式标准

保持一致的格式对于仓库至关重要。所有贡献都必须遵守以下格式标准

格式元素要求
缩进使用制表符
制表符宽度8 个空格
尾随空白必须修剪

GitHub 和一些代码扩展将自动强制执行这些格式要求。

来源:CONTRIBUTING.md100-107

开发环境设置

一些编辑器扩展提供了 AGC 汇编语言的语法高亮功能,使贡献更加容易

来源:CONTRIBUTING.md72-98

仓库组件和贡献点

此图显示了仓库的主要组件以及可能需要贡献的地方

来源:CONTRIBUTING.md4-63

国际化贡献

本仓库欢迎对其文档进行翻译。目前,本仓库的文档已提供超过 25 种语言的版本。

贡献翻译时

  1. 以适当的语言创建文档文件的翻译
  2. 将翻译后的文件放置在 Translations 目录中
  3. 在主文档中添加指向翻译文件的链接

有关贡献翻译的更多详细信息,请参阅国际化页面。

来源:CONTRIBUTING.md4-63

拉取请求流程

提交拉取请求之前

  1. 确保您的更改与原始扫描件一致
  2. 验证您的更改是否遵循格式指南
  3. 检查您的更改是否引入了新的印刷错误或缺陷
  4. 确保您的更改保持历史准确性

维护者将在合并前审查您的贡献是否符合这些指南。

来源:CONTRIBUTING.md166-168

常见问题与解决方案

问题解决方案
印刷不一致对照扫描件检查并确保印刷错误与原始版本一致
不正确的间距遵循间距指南(单词单空格,句子双空格,缩进三空格)
不正确的换行符确保当 R0000 存在时换行符与扫描件匹配,否则限制为 1-2 个空行
格式问题使用支持 AGC 汇编和自动格式化的编辑器扩展

来源:CONTRIBUTING.md116-135

结论

向 Apollo-11 仓库贡献是参与保存这一具有历史意义的代码库的机会。通过遵循这些指南,贡献者可以确保数字化版本忠实于麻省理工学院仪器实验室团队为阿波罗制导计算机开发的原始源代码。

在提交任何拉取请求之前,请务必对照原始扫描打印件验证您的更改,以保持这项在计算历史上的卓越成就的历史完整性。