如果您想要为 Kubernetes 文档做贡献,本页面的内容和链接的主题能够给您帮助。您不必是一位开发者或者技术作者,也同样可以为 Kubernetes 文档及其用户体验带来巨大的影响!您只需要有一个 Github 账号 和一个浏览器。
如果您在寻找有关如何开始向 Kubernetes 仓库贡献代码的信息,请参考 Kubernetes 社区指南。
Kubernetes 文档是以 Markdown 形式编写的,使用 Hugo 进行部署。源码位于 Github 的 https://github.com/kubernetes/website。
大部分文档源码位于 /content/en/docs/
。有些参考文档是由 update-imported-docs/
目录内的脚本自动生产的。
您可以查找 issue、编辑内容或者对其他人的提交内容进行复审,这些都可以在 Github 网站上完成。您也可以使用 Github 内置的历史功能和查询工具。
并非所有的任务都可以通过 Github UI 完成,这些任务会在中级和高级文档贡献指南中讨论。
Kubernetes 文档是由特别兴趣小组(SIG)维护的,该小组名为 SIG Docs。我们通过 Slack 频道、邮件列表和网络视频周会进行交流。 欢迎新的参与者加入。更多信息,请参考参与 SIG Docs。
我们维护了一个风格指南页面,上面有关于 SIG Docs 社区对于语法、句法、源格式和排版的约定。 在您做首次贡献前或者在有疑问的时候请先查阅风格指南。
风格的变化是由 SIG Docs 组共同决定的。如您想提交变更或增加内容,请将内容添加到议题并参与会议讨论。 更多信息,参见进阶贡献主题。
我们使用页面模板来控制文档页面。需要确保您理解这些模版是如何工作的,请阅读使用页面模板。
Kubernetes 文档使用 Hugo 将 Markdown 转换成 HTML。我们使用标准的 Hugo 短代码,同时也会有部分为 Kubernetes 定制化的代码。 有关如何使用短代码的信息,请参见自定义 Hugo 短代码。
在 /content/
目录中有文档源码的多语言版本。每个语言拥有其自己的目录,采用 ISO 639-1 标准 的两位编码命名。例如,英文文档源码位于 /content/en/docs/
目录。
更多关于对多语言文档做贡献的信息,请参考中级贡献指南中的“本地化内容”。
如果您有兴趣开始一个新的本地化语言项目,请参考“本地化”。
任何拥有 Github 账号的人都能对于 Kubernetes 文档登记一个问题(或者 bug 报告)。 如果看到有东西坏了,即便您不知道如何修复它,请登记一个问题。 除了您发现微小的错误的情况,例如发现了一个拼写错误,您想自己进行修复。在这种情况下, 您可以修复它,而不用先登记一个 bug。
如果您在已有的 [Kubernetes 文档](/docs/)页面,在页面底部直接点击 **创建问题** 按钮。
如果您当前未登录 Github,那么请登录。Github 文档表单会带着预填的信息出现。
使用 Markdown 格式,填写尽可能多的详细信息。在方括号 (`[ ]`) 中,使用 `x` 代码选择了该选项。
如果您提交了修复问题的方法,也填在里面。
如果认为有些内容应该存在,但您不知道应该将这些内容存放在哪里,或者任何不适合放在现有页面中,
那么也可以记录一个问题。您可以选择通过内容相近的页面创建问题,或者直接
在 [https://github.com/kubernetes/website/issues/new/](https://github.com/kubernetes/website/issues/new/)
中记录问题。
要确保我们能理解您的问题,并能付诸行动,请谨记如下指南:
例如,“修复安全文档”就是一个不可执行的问题,但 “为'限制网络访问'主题添加详细信息”就是可执行的。
#
为前缀)进行关联。例如 源于 #987654
。SIG Docs 团队的交流采用如下机制:
#sig-docs
频道,在那里我会实时讨论文档的问题。一定要做自我介绍!kubernetes-sig-docs
邮件列表,在这里会有广泛的讨论以及官方决策的记录。Note: 您也可以查看 Kubernetes 社区会议日历。
要改进现有的内容,您可以在创建 fork 之后起草一个 拉取请求(PR) 。 这两个术语是 Github 专用的。 出于本主题的目的,您无需了解有关它们的所有信息,因为您可以通过浏览器做所有的事情。 当您继续阅读贡献者中级指南,您会需要更多 Git 术语的背景知识。
Note: Kubernetes 代码开发者: 如果您在撰写 Kubernetes 新版本的新功能文档,流程会稍有不同。 关于流程指南和最后期限的信息,请参阅编写功能文档。
在贡献 Kubernetes 的代码或文档前,您 必须 阅读贡献者指南, 并签署贡献者许可协议(CLA)。 别担心 – 不需要太多时间!
如果您发现了一些想要马上修复的东西,只需要遵循如下指南。您不需要记录一个问题(尽管你当然可以这么做)。
如果您想从处理现有的问题开始,前往 https://github.com/kubernetes/website/issues
找一些有 good first issue
标签的问题(您可以使用这个 捷径)。
阅读评论,确保针对此问题没有打开的 PR,并且没有人留言说他们最近正在解决这个问题(3天是个很好的规则)。留言说您会去解决这个问题。
提交 PR 最重要的方面就是选择您工作所基于的基础分支。使用如下指南来做决定:
master
来解决以及发布的内容中的问题,或者对于已经存在的内容进行改进。dev-release-1.17
用于 release-1.17
发布)来撰写新的特性或者下个版本还未发布的变更说明。如果您还不确定应该使用哪个分支,在 Slack 上询问 #sig-docs
或者参与 SIG Docs 周会来确认。
按照如下步骤进行 PR 提交以改善 Kubernetes 文档。
如果您从未创建过 Kubernetes 文档仓库的 fork,会提示您需要创建。请在您的 Github 账号
下创建 fork,而不是在您所在的组织下创建。fork URL 通常是这样的 https://github.com/<username>/website
,
出发您已经有一个同名的仓库,那样会造成冲突。
Github Markdown 编辑器会载入着文档源码一起出现。根据实际情况撰写变化内容。在编辑器下方, 填写 Propose file change(建议修改文件) 表格。第一个区域需要填写提交说明消息, 不能超过 50 个字符。第二个区域是可选的,也能够填写更多详细信息。
<blockquote class="note">
点击 **建议修改文件(Propose file change)** 按钮。
变更会保存为您 fork 新分支(通常会自动命名为 `patch-1`)中的一个提交内容。
kubernetes/website
的 master
分支)
进行比较。您可以更改选择框,但现在请不要这么做。看一下屏幕底部显示的变化内容,
如果看起来没问题,点击 创建 PR(Create pull request) 按钮。<blockquote class="note">
祝贺您!您的 PR 就出现在了[拉取请求](https://github.com/kubernetes/website/pulls) 中。
几分钟后,您可以预览 PR 所带来的变化。前往您 PR 的 **Conversation(对话)** 标签页,
点击 `deploy/netlify` 测试的 **Details(详细信息)** 链接,它在页面底部附件。
默认会在同一个浏览器窗口中打开。
k8s-ci-robot
建议指定。如果复审人员建议您修改,您可以
前往 Files changed(改变的文件内容) 标签页,点击任意 PR 中改变的文件页面上的铅笔图标。
保存更改的文件时,将在 PR 监视的分支中创建新的提交。这是提交 PR 的唯一方式。如果您已经是一名 Git 和 Github 的高级用户,您也可以使用本地 GUI 或者 Git 命令行。关于使用 Git 客户端的基础会在中级 贡献者指南中讨论。
就算不是批注者或者复审者,也同样可以复审 PR。复审人员并不是”固定”的,意味着您单独的评审并不会让 PR 合并。 然而,这依然对我们是很有帮助的。即使您没有留下任何评审意见,您可以了解 PR 的规范和礼仪,并习惯工作流程。
open
,所以您不会看见已经关闭或合并的 PR。
最好使用 cncf-cla: yes
筛选器,并且对于第一次复审来说,最好加上 size/S
或者 size/XS
。size
标签会根据 PR 修改的代码行数自动生成。
您可以通过页面顶端的选择框应用筛选器,或者使用
这个捷径
来查找所有小型 PR。所有筛选条件都是 与
的,所以您不能在一次查询中同时查找 size/XS
和 size/S
的结果。前往 Files changed(文件修改) 标签页。查看 PR 中的变化部分,如果适用,也看一下关联的问题。
如果您发现问题或者可以改进的空间,将鼠标悬浮在那一行并点击前面出现的 +
加号。
你可以留下评论,选择 Add single comment(仅添加评论) 或者也可以 Start a review(开始复审)。 典型来说,开始复审更好,因为这样您就可以在多行下留下评论,并且只有在完成复审后统一提交并通知 PR 的作者, 而不是每一条评论都发送通知。
感谢您对于 PR 的复审工作!当您对于项目还是新人时,最好在拉取请求评论中征求反馈意见。
Slack 的 #sig-docs
频道就是一个征求意见好去处。
任何人都可以撰写博客并提交复审。博客文章不应具有商业性质,而应包含广泛适用于 Kubernetes 社区的内容。
要提交博客文章,您可以选择使用 Kubernetes 博客提交表单 或者按如下步骤进行:
案例研究强调组织如何使用 Kubernetes 解决实际问题。它们是由 Kubernetes 市场团队共同撰写的,由 CNCF 进行处理。
看一下现有案例研究的源码。 使用 Kubernetes 案例研究提交表提交您的提案。
当您对本主题中讨论的所有任务感到满意,并且您希望以更深入的方式与 Kubernetes 文档团队合作, 请阅读中级贡献者指南。
此页是否对您有帮助?
Thanks for the feedback. If you have a specific, answerable question about how to use Kubernetes, ask it on Stack Overflow. Open an issue in the GitHub repo if you want to report a problem or suggest an improvement.