This is an automated email from the ASF dual-hosted git repository. linkinstar pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/incubator-answer-website.git
commit ba99e90b89dac6bbc15614642d431c3681339538 Author: Estella✨ <[email protected]> AuthorDate: Thu Jul 4 11:30:23 2024 +0800 translation of the rest of community (#212) Co-authored-by: dashuai <[email protected]> --- .../current/blog-post.md | 132 ++++++++++++ .../current/contributing.md | 90 ++++++++ .../current/how-to-release.md | 230 +++++++++++++++++++++ .../current/issues.md | 60 ++++++ .../current/pull-request.md | 78 +++++++ .../current/translation.md | 17 ++ 6 files changed, 607 insertions(+) diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/blog-post.md b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/blog-post.md new file mode 100644 index 00000000..7e3fae31 --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/blog-post.md @@ -0,0 +1,132 @@ +--- +sidebar_label: Blog Post +slug: /blog-post +--- + +# 贡献一篇博客文章 + +博客是[参与](/community/contributing#get-involved) Apache Answer 的最简单方法之一。这也是与他人分享你的知识和经验的好方法。 + +如果你用 Apache Answer 构建了自己的问答社区,或者 Apache Answer 帮助你解决了问题,我们很想听听你的故事。我们还鼓励你分享使用 Apache Answer 的技巧和窍门,或写下如何为项目做出贡献。 + +要开始,只需阅读我们的博客指南并开始写作! + +## 存储库地址 + +- [GitHub](https://github.com/apache/incubator-answer-website): 撰写和存储博客文章。 +- [Crowdin](https://crowdin.com/project/answer-website): 将博客文章翻译成多种语言,使更广泛的受众更容易访问。 + +## 博客目录 + +博客目前有两种语言版本:英语(默认)和中文。如果你要提交中文博客,你需要手动将其复制到 /blog 目录,以防止编译错误。如果你只提交英语博客,你不需要做其他任何事情。 + +- 英文博客: `/blog` +- 中文博客: `/i18n/docusaurus-plugin-content-blog` + +我们与 Crowdin 集成,它会自动同步需要翻译的文件。这使得社区贡献者更容易参与翻译。 + +## 博客类别 + +我们当前的博客类别是: + +- Community +- Best Practices +- Tutorials +- Insights +- Releases +- Tech + +除了提交新博客外,还可以通过识别和纠正任何不正确或不清晰的语言,或更新内容以反映最新信息来帮助维护现有的博客内容。 + +## 提交博客 + +### 环境设置 + +项目预览和运行取决于 [node](https://nodejs.org) 和 [pnpm](https://pnpm.io) 。请提前安装好。 + +### 添加作者信息 + +所有作者信息都存储在以下文件中: + +- `/blog/authors.yml` +- `/i18n/docusaurus-plugin-content-blog/authors.yml` + +你可以在这些文件中添加有关自己的信息以显示。这里有一个例子: + +```yaml title="/blog/authors.yml" +Anne: + name: Anne Zhu + title: Product Marketing Manager + url: https://github.com/PrimmaAnna + image_url: https://avatars.githubusercontent.com/u/131739771?v=4 + +# Use in the blog's frontMeta +--- +authors: [Anne] # separate with commas [Anne, others] +--- +``` + +### 过程 + +1. 确保将新的博客文档放在正确的路径上。 + + - **对于英语博客**: 在`/blog`目录中创建一个新的 Markdown 文件。 + - **对于中文博客**: 在`/i18n/zh-CN/docusaurus-plugin-content-blog/`目录中创建一个新的 Markdown 文件。 + +2. 为了确保最终文章 URL 遵循`/blog/2023/06/01/hello-world`,我们为每个文章文件建立了以下命名约定: + + - **纯文本** + - 在`/blog`目录中直接创建一个名为`2023-06-01-hello-world.md`的文件。 + - **富文本** + - 在`/blog`目录中创建一个名为`/2023-06-01-foo-bar`的目录。 + - 在`/2023-06-01-foo-bar`目录里创建一个`index.md`文件。 + - 图像和其他多媒体内容也应放置在此目录中。 + + 为了保持语义和独特的文章 URL ,我们建议在命名文件或文件夹时在日期后使用博客标题。将标题转换为小写,并将单词与连字符连接起来。这消除了对页面上的弹头字段的担忧。除非绝对必要,否则避免指定弹头字段。 + + 例如,如果博客的标题是`Hello World`,该文件可以命名为`2023-06-01-hello-world`,这将生成 URL `/blog/2023-06-01/hello-world`。 + + ```shell + blog + ├── 2023-06-01-foo-bar # Use directory for images. + │ ├── index.md + │ ├── sample.png + │ └── ... + ├── 2023-06-01-hello-world.md # Use file for plain text. + └── ... + ``` + + 为了确保跨平台的文件兼容性,避免在文件名中使用特殊字符`/ ? * : | \ < > & #`。 + +3. 在 [Docusaurus Markdown](https://docusaurus.io/docs/markdown-features) 中学习 Markdown 语法。如果包含图像,请确保图像和博客位于同一目录中。 + + 除了标准元数据字段外,我们还引入了一些自定义字段及其用法,例如“封面图像”(图像)和“特色帖子”(特色)。 + + 封面图像需要遵守我们的视觉风格指南,以便你可以专注于撰写博客文章。提交后,我们将根据你的内容自动生成封面图片。 + + “特色”字段决定你的博客文章是否出现在[博客](/blog)主页上。要突出你的博客文章,请将“特色”字段设置为“真实”。 + + 查看以下示例。 + + ```yaml + title: The What, Why Using Tags for Online Community + authors: [Anne] + category: Insights // value reference in blog type + featured: true + image: [email protected] // Note: place it in the /static/img/blog directory. + description: "Discover more about tags, benefits, and how vital they are for organizing content in online community." + ``` + +4. 在提交代码之前,请确保运行无错误。你可以通过运行以下命令来检查它。 + + ```shell + # Preview locally + pnpm start # to preview the Chinese docs, run pnpm start:zh) + + # Locally compile to ensure no errors before submitting + pnpm build # no errors when display [SUCCESS] Generated static files in "build/zh-CN" + ``` + +## 其他 + +对于代码提交,您可能还需要学习 [Git](https://git-scm.com/) 和[拉取请求](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork)。 diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/contributing.md b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/contributing.md new file mode 100644 index 00000000..a924df37 --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/contributing.md @@ -0,0 +1,90 @@ +--- +slug: /contributing +--- + +# 贡献 + +感谢你有兴趣为 Apache Answer 做出贡献,希望本文档能明确做出贡献的过程。 + +[开源指南网站](https://opensource.guide/)为想要学习如何运行开源项目并为其做出贡献的个人、社区和公司提供了资源集合。以下指南将会对贡献者和开源新手特别有用: + +- [如何为开源做出贡献](https://opensource.guide/how-to-contribute/) +- [建立欢迎社区](https://opensource.guide/building-community/) + +## 行为规范 + +Apache Answer 通过了一项行为准则,我们希望项目参与者遵守该准则。请阅读[全文](https://www.apache.org/foundation/policies/conduct.html),以便你了解哪些行动是可以容忍的,哪些是不能容忍的。 + +## 参与进来 + +Apache Answer 是一个由热情的用户、贡献者和PMC成员构建的开源项目。我们致力于创建一个开放和包容的社区,我们欢迎每个人加入我们,接收 Apache 的方式,共同构建开源。 + +任何人都可以为 Apache Answer 做出贡献。除了贡献代码外,还有许多其他参与方式,例如: + +##### 使用 Apache Answer + +- 开始使用Apache Answer很容易。只需遵循我们的[入门指南](/docs/installation),看看是否一切正常运行。 +- 如果没有,你可以。[创建一个问题](/community/issues)来报告错误或提出改进建议。 + +##### 分类问题和拉取请求 + +- 如果你认为[问题](/community/issues)没有提供解决它所需的所有细节,请询问更多信息。 +- 表明[标签](https://github.com/apache/incubator-answer/labels)有助于对问题进行分类。 +- 标记过时或应该关闭的问题。 +- 询问测试计划和审查代码。 + +##### 贡献代码 + +- 如果你找到可以解决的问题,请认领问题。创建一个[拉取请求](/community/pull-request)来提交你的更改。 +- 标记为[`good first issue`](https://github.com/apache/incubator-answer/labels/good%20first%20issue)的问题非常适合作为开始。 + +##### 改进文档 + +- 如果你在阅读我们的[文档](/docs)时发现任何错别字、语法或错误,只需单击“编辑此页面”并在GitHub上进行编辑。 + +##### 开发插件 + +- 使用插件扩展 Apache Answer 的功能。 +- 一些用户期待的功能,可以通过[开发和提交](/docs/development/plugins)去声明或创建你的需求。 + +##### 帮助版本发布 + +- 通过测试新的候选版本并在[[email protected]](https://lists.apache.org/[email protected])上投票,帮助我们让 Apache Answer 变得更好。 +- 如果你没有发现任何问题,可以投`+1 (non-binding)`赞成票。 +- 如果你发现了问题,可以投 `-1 (non-binding)`反对票。 + +##### 贡献翻译 + +- 如果你能流利地使用英语以外的语言,你可以使用 [Crowdin](https://crowdin.com/project/answer) 帮助我们将 Apache Answer 翻译成其他语言。 +- 想要获得更多信息,可以参阅[贡献翻译指南](/community/translation)。 + +##### 帮助支持 + +- 通过在 [Apache Answer Meta](https://meta.answer.dev)上帮助其他用户可以为我们提供很大的帮助。 +- 回复并解决[邮箱列表](/community/support/#mailing-list)中的问题。 + +##### 推广 Apache Answer + +- 在社交媒体上分享 Apache Answer 。 +- 在 Apache Answer 上把你的故事分享给更多人。 +- 加入我们的聚会、论坛等。 + +##### 其他 + +- 有新想法吗?非常欢迎所有贡献。 +- - 如果你认为你需要帮助来规划你的贡献,请[联系我们](/community/support/#others),并告诉我们你正在寻找什么样的帮助。 + +## 开发过程 + +Apache Answer 使用[GitHub](https://github.com/apache/incubator-answer)作为其真实版本的来源。核心团队将直接在那里工作。所有的更改从一开始就会是公开的。 + +所有拉取请求都将由持续集成系统GitHub操作进行检查。有单元测试,还有更多。 + +### 分支组织 + +提交PR时应选择哪个分支? + +- `main`分支对应于**最新版本**的 answer。如果你正在为最新版本**修复**问题,请选择主分支。 +- `dev`分支用于**下一个版本**的开发。因此,如果你正在开发**新功能**,请切换到开发分支,并为其提交PR。 + +通常,我们在问题上标记里程碑来跟踪问题应该在哪个版本中修复。因此,你可以根据里程碑确定应该提交到哪个版本。 diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/how-to-release.md b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/how-to-release.md new file mode 100644 index 00000000..7093c3ad --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/how-to-release.md @@ -0,0 +1,230 @@ +--- +slug: /how-to-release +--- + +# 如何发布 + +所有 Apache 项目都必须遵循 [Apache Release Policy](https://www.apache.org/legal/release-policy.html) 。这可以帮助你了解政策以及如何在 Apache 上发布项目。 + +## 发布过程 + +1. 准备所有发布工件。 +2. 将发布工件上传到 svn 存储库。 +3. 证实发布工件。 +4. 对发布进行投票。 +5. 宣布投票结果并发布。 + +## 准备所有发布工件 + +1. 在 git 存储库中创建 RC 标签,并编写发布说明。 +2. 建立发布工件(捆绑包、源档案等)。 +3. 在发布工件上签名。 +4. 为发布工件创建校验和。 + +### 签署发布工件 + +1. 如果你没有 GPG 密钥,创建一个 GPG 密钥。 +2. 将 GPG 密钥添加到 KEYS 文件中。 +3. 使用 GPG 密钥签署发布工件。**小心检查二进制文件是否完整,以避免大小为0。** + +```shell +# create a GPG key, after executing this command, select the first one RSA 和 RSA +$ gpg --full-generate-key + +# list the GPG keys +$ gpg --keyid-format SHORT --list-keys + +# upload the GPG key to the key server, xxx is the GPG key id +# eg: pub rsa4096/4C21E346 2024-05-06 [SC], 4C21E346 is the GPG key id; +$ gpg --keyserver keyserver.ubuntu.com --send-key xxx + +# append the GPG key to the KEYS file the svn repository +# [IMPORTANT] Don't replace the KEYS file, just append the GPG key to the KEYS file. +$ svn co https://dist.apache.org/repos/dist/release/incubator/answer/ +$ (gpg --list-sigs [email protected] && gpg --export --armor [email protected]) >> KEYS +$ svn ci -m "add gpg key" + +# sign the release artifacts, xxxx is [email protected] +$ for i in *.tar.gz; do echo $i; gpg --local-user xxxx --armor --output $i.asc --detach-sig $i ; done +``` + +### 为发布的工件创建校验和 + +```shell +# create the checksums +$ for i in *.tar.gz; do echo $i; sha512sum $i > $i.sha512 ; done +``` + +## 将发布工件上传到 svn 存储库 + +1. 在 svn 存储库中为发布工件创建一个目录。 +2. 将发布工件上传到 svn 存储库。 +3. 发布版本格式: 1.3.1-incubating + +发布工件应上传到`https://dist.apache.org/repos/dist/dev/incubator/answer/{release-version}`目录。 + + +```shell +$ svn co https://dist.apache.org/repos/dist/dev/incubator/answer/ +$ cp /path/to/release/artifacts/* ./{release-version}/ +$ svn add ./{release-version}/* +$ svn commit -m "add Apache Answer release artifacts for {release-version}" +``` + +**重要!**完成后,请访问链接`https://dist.apache.org/repos/dist/dev/incubator/answer/{release-version}`检查文件上传是否正确。 + + + + +## 验证发布工件 + +以下是发布工件的基本检查项。 + +- [ ] 下载链接是有效的。 +- [ ] 校验和与 PGP 签名是有效的。 +- [ ] 源代码发行版具有与当前版本匹配的正确名称。 +- [ ] 许可证和通知文件对每个 Apache Answer repo 都是正确的。 +- [ ] 如有必要,所有文件都有许可证标头。 +- [ ] 源档案中没有捆绑未经许可的编译档案。 + +### 如何验证签名 + +```shell +# download KEYS +$ curl https://dist.apache.org/repos/dist/release/incubator/answer/KEYS > KEYS + +# import KEYS and trust the key, please replace the email address with the one you want to trust. +$ gpg --import KEYS +$ gpg --edit-key [email protected] +gpg> trust +gpg> 5 +gpg> y +gpg> quit + +# enter the directory where the release artifacts are located +$ cd /path/to/release/artifacts + +# verify the signature +$ for i in *.tar.gz; do echo $i; gpg --verify $i.asc $i ; done + +# if you see 'Good signature' in the output, it means the signature is valid. +``` + +### 如何验证校验和 + +```shell +# verify the checksums +$ for i in *.tar.gz; do echo $i; sha512sum --check $i.sha512; done +``` + +## 对发布进行投票 + +1. 发送投票电子邮件至[email protected]。孵化器需要首先对他们的开发列表进行投票,该投票需要**Apache Answer PPMC成员至少3+1**。 +2. 等待**至少72小**或直到达到必要的票数。 +3. 在开发名单上宣布投票结果。 +4. 如果开发投票通过,请发送电子邮件至 [email protected] ,要求在总名单上投票。孵化器投票需要**项目管理委员会成员至少3+1**(具有约束力的投票)。 +5. 等待**至少72小**或直到达到必要的票数。 +6. 在开发名单上宣布投票结果。 + +### 投票电子邮件模板 + +**注意!**直接复制电子邮件内容将导致格式不正确。建议将电子邮件复制到`.txt` 文件。写完内容后,将其复制到您正在使用的电子邮件工具中。在开发的第一轮投票中,不需要 `The vote tread` 和 `Vote Result` 。 + +如何获取投票线程的链接: +1. 从 Apache 邮件列表中找到你发送的电子邮件。 +2. 单击电子邮件下方的链接按钮以获取你需要的链接。 + + + + + +```text +[VOTE] Release Apache Answer (Incubating) {release-version} + +Hello, + + This is a call for vote to release Apache Answer (Incubating) version {release-version}. + + The vote thread: + https://lists.apache.org/thread/{id} + + Vote Result: + https://lists.apache.org/thread/{id} + + The release candidates: + https://dist.apache.org/repos/dist/dev/incubator/answer/{release-version}/ + + Release notes: + https://github.com/apache/incubator-answer/releases/tag/{release-version} + + Git tag for the release: + https://github.com/apache/incubator-answer/releases/tag/{release-version} + + Git commit id for the release: + https://github.com/apache/incubator-answer/commit/{id} + + Keys to verify the Release Candidate: + https://downloads.apache.org/incubator/answer/KEYS + + The vote will be open for at least 72 hours or until the necessary number of votes are reached. + + Please vote accordingly: + + [ ] +1 approve + [ ] +0 no opinion + [ ] -1 disapprove with the reason + + Checklist for reference: + + [ ] Download links are valid. + [ ] Checksums and PGP signatures are valid. + [ ] Source code distributions have correct names matching the current release. + [ ] LICENSE and NOTICE files are correct for each Apache Answer repo. + [ ] All files have license headers if necessary. + [ ] No unlicensed compiled archives bundled in source archive. + + To compile from the source, please refer to: + + https://github.com/apache/incubator-answer#building-from-source + +Thanks, +<YOUR NAME> +``` + +### 宣布电子邮件模板 + +```text +Hello everyone, + +The Apache Answer (Incubating) {release-version} has been released! + +Apache Answer is a Q&A platform software for teams at any scale. +Whether it's a community forum, help center, or knowledge management platform, you can always count on Apache Answer. + +Download Links: https://downloads.apache.org/incubator/answer/ + +Release Notes: https://github.com/apache/incubator-answer/releases/tag/{release-version} + +Website: https://answer.apache.org/ + +Resources: +- Issue: https://github.com/apache/incubator-answer/issues +- Mailing list: [email protected] + +Thanks, +<YOUR NAME> +``` + +## 将发布工件迁移到发布Apache SVN + +在宣布投票结果之前,你需要将发布工件从开发 Apache SVN 迁移到发布 Apache SVN 。发布工件应上传到`https://dist.apache.org/repos/dist/release/incubator/answer/{release-version}`目录。 + +```shell +$ svn mv https://dist.apache.org/repos/dist/dev/incubator/answer/{release-version} https://dist.apache.org/repos/dist/release/incubator/answer/{release-version} -m "transfer packages for answer {release-version}" +``` + +## 笔记 +### RC 标签 +当你想发布新版本时,你需要先在git存储库中创建一个新的RC标签。标签名称应该是`v{release-version}-rc{rc-version}`。这具有避免删除标签的优势。 + +例如,如果你想发布`1.2.0`版本,则需要创建一个名为`v1.2.0-RC1`的标签。RC的意思是释放候选人。发布投票通过后,你需要根据RC标签创建一个名为`v1.2.0-RC2`的新标签。但是,如果投票未通过,你可以解决问题,并创建一个新的RC标签,如`v1.2.0-RC2`,然后开始新的投票。 diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/issues.md b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/issues.md new file mode 100644 index 00000000..8f552a92 --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/issues.md @@ -0,0 +1,60 @@ +--- +slug: /issues +--- + +# 问题 + +Apache Answer项目中有一些仓库,你可以为不同的仓库提出你的问题。 + +| 仓库 | 描述 | 问题 | +| --- | --- | --- | +| Apache Answer | Apache Answer 核心代码 | [问题](https://github.com/apache/incubator-answer/issues) | +| Apache Answer 插件 | Apache Answer 插件代码 | [问题](https://github.com/apache/incubator-answer-plugins/issues) | +| Apache Answer 网页 | Apache Answer 网页代码 | [问题](https://github.com/apache/incubator-answer-website/issues) | + +打开新问题时,请务必填写问题模板。**这一步非常重要!** 不这样做可能会导致你的问题无法及时管理。如果发生这种情况,请不要将此视为个人问题,一旦你收集了模板所需的所有信息,请随时打开新问题。 + +**请不要使用 GitHub 问题跟踪器提问。**相反,你可以在上提问,我们将尽最大努力为你提供需要的答案。 [Apache Answer Meta](https://meta.answer.dev) 上提问,我们将尽最大努力为你提供需要的答案。 + +## 程序错误 + +如果你发现程序错误,首先要做的是搜索问题,看看是否有人已经报告了。如果是这样,请添加任何其他信息作为对现有问题的评论。 + +如果不存在现有问题,请打开新问题并完整填写问题模板。你提供的信息越多,你的问题就越有可能迅速得到解决。最好在每个问题中包含以下内容: + +- 对问题的清晰描述 +- 问题的屏幕截图(如果适用) +- 重现问题的步骤 +- 正在使用的 Apache Answer 版本 +- 正在使用的部署方法(例如Docker,二进制,源) +- 浏览器的版本(如果问题与前端相关) +- 正在使用的操作系统(如果问题与后端相关) +- 认为相关的任何其他细节 + +## 安全程序错误 + +如果你发现了安全漏洞,考虑到这一点,请不要提交公共问题。你可以按照[安全政策](https://github.com/apache/incubator-answer/security/policy)中的说明进行私下报告。 + +## 功能请求 + +我们感谢你的反馈和想法。如果你有功能请求,可以完整填写问题模板,并搜索问题,看看是否有人已经请求了相同的功能。 + +如果我们认为功能请求是一个好主意,我们会将其添加到路线图中并设置里程碑。如果你想实施它,请评论这个问题,我们会将其分配给你。 + +## 问题标签 + +我们用标签对问题进行分类。 + +| 标签 | 描述 | +| --- | --- | +| `bug` | 表示意外问题或意外行为 | +| `documentation` | 表明需要对文档进行改进或添加 | +| `duplicate` | 表示相似对问题、合并请求或讨论 | +| `feature` | 意味着新的功能请求 | +| `enhancement` | 表示增强请求 | +| `good first issue` | 表明适合初次贡献者的好问题 | +| `help wanted` | 意味着维护者需要在某个问题或拉取请求上得到帮助 | +| `invalid` | 表示某个问题、拉取请求或讨论已不再相关 | +| `question` | 表明某个问题、拉取请求或讨论需要更多信息 | +| `wontfix` | 表示在某个问题、拉取请求或讨论上工作将不会继续 | +| `security` | 意味着一个关于安全的问题 | diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/pull-request.md b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/pull-request.md new file mode 100644 index 00000000..7cb75a44 --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/pull-request.md @@ -0,0 +1,78 @@ +--- +slug: /pull-request +--- + +# 拉取请求 + +我们感谢你抽出时间做出贡献!在提交拉取请求之前,我们要求你创建一个解释错误或功能请求的问题,并告诉我们你计划为它创建拉取请求。如果问题已经存在,请对该问题发表评论,让我们知道你想提交拉取请求。这有助于我们跟踪拉取请求,并确保没有重复的工作量。 + +## 语义化的提交消息 + +在提交消息时,遵循以下格式可以令你成为更好的程序员。 + +```txt +<type>(<scope>): <subject> +``` + +- `type` + + - `feat`: 一个新功能。 + - `fix`: 一个程序错误修复。 + - `docs`: 仅文档更改。 + - `style`: 不影响代码含义的更改(空白、格式、缺少分号等)。 + - `refactor`: 既不修复错误也不添加功能的代码更改。 + - `perf`: 提高性能的代码更改。 + - `test`: 添加缺失的测试。 + - `chore`: 对构建过程或辅助工具和库(如文档生成)的更改。 + +- `scope` + + - 范围可以是任何指定提交更改地点的东西。 + +- `subject` + - 该主题包含对变化的简要描述。 + - 使用命令式、现在时: "change" 而不是 "changed" 也不是"changes"。 + - 首字母不要大写。 + - 不要在末尾放置`.`。 + - 提交消息的整个长度不得超过50个字符。 + - 描述提交的具体操作,而不是它涉及或修复的问题。 + - 简洁但具有描述性 - 通过阅读主题,我们应该能够清楚地理解提交的操作。 +## 许可 + +通过向 Answer 做出贡献,你同意你的贡献将根据 Apache-2.0 许可证获得许可。将此复制并粘贴到新文件的顶部: + +```go +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + ``` + +## 贡献者许可协议(CLA) + +Apache CLA 是 Apache 贡献者许可协议的缩写,本协议的目的是明确定义知识产权向 ASF 贡献的条款,从而允许我们在未来某个时候在软件发生法律争议时为该项目辩护。在个人获得任何 ASF 项目的提交权之前,需要将已签名的 ICLA 存档。 + +对于由单个原始作者贡献的更大贡献,我们可能会要求你提交[个人贡献者许可协议(ICLA)](https://www.apache.org/licenses/contributor-agreements.html)表格。你的代码的版权仍将属于你,但 ICLA 有助于保护 Apache Answer 的用户。所有项目委员会也都签署了这份表格。 + +如果你已经签署了 Apache ICLA ,则无需发送电子邮件。由于你已经以你的公共名称提交了 ICLA ,因此无需重新提交。如果你从未签署过 ICLA ,请在电子邮件中注明,PMC可以直接申请此帐户。 + + +## 开发和贡献 + +有关详细信息,请参阅[文档](/docs/development)。 + + diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/translation.md b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/translation.md new file mode 100644 index 00000000..5f19cfd8 --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-docs-community/current/translation.md @@ -0,0 +1,17 @@ +--- +slug: /translation +--- + +# Translation + +我们的项目与[crowdin](https://crowdin.com/)翻译有关;我们建议通过Crowdin提供翻译。 + +翻译项目列表: + +- [crowdin-apache-answer](https://crowdin.com/project/answer) +- [crowdin-apache-answer-website](https://crowdin.com/project/answer-website) + +## 为什么推荐 crowdin + +1. 通过 crowdin ,翻译人员只需要专注于翻译工作本身, crowdin 将提供非常方便的提示; +2. 不需要额外的操作,例如 git 命令。我们的 apache-answer gi项目语言文件使用 yaml 。一些贡献者可能会错误地格式化缩进或操作,导致一些格式化错误;
