ClojureScript

贡献网站

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

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

如果您想做出贡献(拼写错误、修改或新内容),您必须成为贡献者并使用下面描述的过程。

如何成为贡献者

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

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

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

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

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

提交小改动

可以直接在 GitHub 网页界面中提出小改动。

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

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

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

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

  5. 在页面底部部分编写简要的更改描述,然后点击“提出文件更改”。这将把原始库分支到您自己的库版本中,并应用更改。

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

提交大改动

对于任何重大更改,首先打开一个 问题,并在花费时间进行更改之前讨论更改。

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

要为处理更大的更改创建本地环境

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

  2. 在您的本地终端中git clone 分叉的库,并cd clojurescript-site

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

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

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

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

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

要积极地为网站做出贡献,重要的是要让您自己的 fork 与此库保持同步。为此

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

  2. 在每次贡献之前

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

    • 移动到您的 master 分支:git checkout master(如果您还没有在那里);

    • 通过将 HEAD 重置到获取的分支来清除 master 分支中任何未计划的修改:git reset --hard upstream/master;以及

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

构建和预览更改

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

安装 JBake 2.5.0-SNAPSHOT

  1. curl -O http://cdn.cognitect.com/clojurescript.org/jbake-2.5.0-SNAPSHOT-bin.zip(或使用浏览器下载此文件)

  2. unzip -o jbake-2.5.0-SNAPSHOT-bin.zip

  3. 将 jbake-2.5.0-SNAPSHOT/bin 添加到您的系统 PATH

要构建网站

检索内容

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

  2. cd clojurescript-site

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

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

  2. unzip -o cljstheme.zip

生成页面

请注意,jbake 2.5.0 需要 Java 8。(它不会在 Java 9 下正确运行。)

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

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

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

样式和导航更改

我们目前不寻求对网站整体样式、导航或基础设施进行更改。这方面正在进行的工作将在不久的将来可见。

如果您在这些方面遇到问题,请打开一个 问题,而不是拉取请求。

如何审查和部署贡献

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

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

  • 使用 Reviewed 标签标记评论。这表示审阅者批准了更改,并要求编辑合并这些更改。

  • 在拉取请求中评论建议进行额外更改。您可以通过在本地分支上进行更多提交来解决这些更改。

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

感谢!

感谢您的贡献!

使用条款

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

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