Clojure

为本网站贡献力量

本网站是一个关于 Clojure 编程语言及其更大生态系统的开源内容库,托管在 https://clojure.org

如果您想指出网站中的问题或提议一个新页面,可以通过在 https://github.com/clojure/clojure-site/issues 上提交 GitHub 问题来实现。

如果您想做出贡献(例如:修改错别字、修改内容或添加新内容),您必须成为贡献者并使用下面描述的过程。

如何成为贡献者

贡献者必须在提交更改之前签署 Clojure 贡献者协议。该 贡献者协议 (CA) 赋予 Rich Hickey 和贡献者联合版权权益:贡献者保留版权,同时也将其权利授予作为开源项目赞助人的 Rich Hickey。

CA 来源于 Oracle 贡献者协议 (OCA),用于 OpenJDK、Netbeans、OpenSolaris 项目等。有一个很好的 OCA 常见问题解答 回答了许多问题。

通过执行 CA,贡献者保护了 Clojure 网站内容并保护了根据社区不断变化的需求调整项目的灵活性。为了使 CA 生效,Clojure 项目必须获得所有贡献的转让。请仔细阅读 CA 以全面了解其条款和条件。通过向 Clojure 贡献源代码或其他材料,您表示您已与 Rich Hickey 签署了有关此类贡献的 CA。为了跟踪贡献者,您理解您的全名和用户名可能会发布在可以通过公共 URL 访问的授权贡献者列表网页上。

要完成协议,请填写并提交 贡献者协议(一个在线电子表单)。

请注意,如果您已经签署了 Clojure 贡献者协议以向 Clojure 源代码提供补丁,则无需再次签署,因为它与该协议相同。

提交少量更改

少量更改可以直接在 GitHub 网页界面中提出。

  1. 转到内容存储库 https://github.com/clojure/clojure-site

  2. 导航到您希望在 content/ 下更新的页面 - url 应与文件基本名称匹配。例如,此文件的内容位于 https://github.com/clojure/clojure-site/blob/master/content/community/contributing_site.adoc

  3. 点击编辑(铅笔)图标。

  4. 内容使用 asciidoc 格式编写,类似于 Markdown。编辑 页面列出了在编辑本网站内容时会遇到的最常见事物的示例。在文本框中进行更改。您可以使用“预览更改”选项卡预览您的更改。GitHub 理解 asciidoc 格式,并将提供您更改的格式化预览。

  5. 在页面底部的部分中编写对更改的简洁描述,然后点击“提出文件更改”。这会将原始存储库分叉到您自己的存储库版本中,并将更改应用于其中。

  6. 然后,您将看到一个“比较更改”页面 - 所有信息都应自动填写,并且更改摘要将在底部 - 这是再次查看更改的好时机。假设一切看起来都正确,您可以通过点击“创建拉取请求”将更改提议回原始存储库。然后,您可以在拉取请求本身中添加评论,然后点击“创建拉取请求”。

提交大量更改

对于任何重大更改,先打开一个 问题 并讨论更改,然后再花费时间进行更改。

如果您要创建一个全新的页面或进行需要多次提交的重大更改,您可能会发现使用命令行工具更容易。

要创建用于处理较大更改的本地环境

  1. 分叉内容存储库 https://github.com/clojure/clojure-site - 这将在您自己的用户 ID 下创建网站内容的版本。

  2. 在本地终端中使用 git clone 克隆分叉的存储库,并 cd clojure-site

  3. git checkout -b <branchname> - 创建一个新分支来处理您的更改。您将使用此分支提交拉取请求。

  4. 在此分支上进行一个或多个提交,修改或添加一个或多个文件。请参阅下面有关如何在本地构建和预览更改的部分。该 编辑 页面列出了在编辑本网站内容时会遇到的最常见事物的示例。

  5. 使用 git push 推送您的更改到分支。

  6. 转到 https://github.com/username/clojure-site/tree/branchname。

  7. 点击绿色按钮“比较、审查和创建拉取请求”,并按照提示提交拉取请求。

要积极地为网站做出贡献,务必使您自己的分叉与该存储库保持最新。为此

  1. 将此存储库添加到您的远程 url:git remote add upstream https://github.com/clojure/clojure-site.git

  2. 在每次贡献之前

    • 获取上游内容:git fetch upstream;

    • 切换到您的主分支:git checkout master(如果您还没有在其中);

    • 通过将 HEAD 重置为已获取的分支来清除主分支中的任何意外修改:git reset --hard upstream/master; 以及

    • 如上所述创建一个新分支:git checkout -b <branchname>

构建和预览更改

在处理较大的更改时,在本地构建网站非常有用。该网站使用 JBake 构建。

安装 JBake 2.6.5

  1. curl -L -O https://dl.bintray.com/jbake/binary/jbake-2.6.5-bin.zip(或使用浏览器下载此文件)

  2. unzip -o jbake-2.6.5-bin.zip

  3. 将 jbake-2.6.5-bin/bin 添加到您的系统 PATH 中

要构建网站

检索内容

  1. git clone https://github.com/clojure/clojure-site.git(或您自己的分叉)

  2. cd clojure-site

检索并安装当前主题资产(这些资产不会经常更改,因此您无需每次都执行此操作)

  1. curl -O https://clojure.org/clojuretheme.zip(或使用浏览器将此文件下载到 clojure-site 目录)

  2. unzip -o clojuretheme.zip

生成页面

  1. jbake -b - 这将在输出目录中创建静态网站

  2. 要查看静态文件,请在浏览器中打开 output/index

  3. 要查看实时预览,请运行 jbake -s 并转到 https://127.0.0.1:8820/index

样式和导航更改

我们目前不希望对整个网站的样式、导航或基础架构进行更改。这方面正在进行的工作将在不久的将来可见。

如果您在这方面有任何问题,请打开一个 问题 而不是拉取请求。

贡献如何被审查和部署

提交拉取请求后,贡献将等待审查。

对于每个拉取请求,一位或多位审阅者将采取行动

  • 使用“已审查”标签标记评论。这表示审阅者批准了更改,并请求编辑合并这些更改。

  • 在拉取请求中评论,建议进行其他更改。您可以使用本地分支上的更多提交来解决这些更改。

  • 关闭拉取请求,并评论说明更改不合适的原因。

感谢!

感谢您的贡献!

使用条款

版权所有 © 2019 Rich Hickey 和贡献者

本存储库中包含的所有文档均由 Rich Hickey 根据 Eclipse Public License v1.0 许可,除非另有说明。