diff --git a/docs/chinese/CONTRIBUTING.md b/docs/chinese/CONTRIBUTING.md index 8120e296b4c..f90b12b492b 100644 --- a/docs/chinese/CONTRIBUTING.md +++ b/docs/chinese/CONTRIBUTING.md @@ -1,6 +1,6 @@ - + @@ -20,37 +20,37 @@ freeCodeCamp.org的存在是因为像你这样的数千名志愿者。我们很 祝您贡献愉快🎉! -##您可以由以下的方法来提供帮助 +## 您可以通过以下这些不错的方式进行贡献 您可以选择为您感兴趣的任何领域做出贡献: -1. [贡献予开源代码库。](#contribution-to-this-open-source-codebase)。帮助编辑[指南文章](https://guide.freecodecamp.org/),[编码挑战](https://learn.freecodecamp.org/),或修复学习平台上的错误。 +1. [贡献予开源代码库](#贡献予开源代码库)。帮助编辑[指南文章](https://guide.freecodecamp.org/),[编码挑战](https://learn.freecodecamp.org/)或修复学习平台上的错误。 -2.在我们的[公共论坛](https://www.freecodecamp.org/forum/)上帮助营员。 [回答他们的编码问题](https://www.freecodecamp.org/forum/?max_posts=1)或[为他们的编码项目给予反馈](https://www.freecodecamp.org/forum/c/project反馈系统开发与?max_posts = 1) +2. 在我们的[公共论坛](https://www.freecodecamp.org/forum/)上帮助营员。[回答他们的编程问题](https://www.freecodecamp.org/forum/?max_posts=1)或[为他们的编码程目给予反馈](https://www.freecodecamp.org/forum/c/project-feedback?max_posts=1)。 -3.帮助我们为[YouTube频道视频](https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ/videos)添加字幕。 +3. 帮助我们为[YouTube频道视频](https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ/videos)添加字幕。 ##贡献予开源代码库 -我们的开源代码库有数千个[编码挑战](https://learn.freecodecamp.org)和[指南文章](https://guide.freecodecamp.org)。 +我们有数以千计的[编码挑战](https://learn.freecodecamp.org)和[指南文章](https://guide.freecodecamp.org)集中在这个庞大的开源代码库中。 您可以帮助我们: - - [📝研究,编写和更新我们的指南文章](#research-write-and-update-our-guide-articles) +- [📝 研究,编写和更新我们的指南文章](#研究编写和更新我们的指南文章) - - [💻创建,更新编码挑战和修复其中的错误](#create-update-and-fix-bugs-in-our-coding-challenges) +- [💻 创建,更新编码挑战和修复其中的错误](创建更新编码挑战和修复其中的错误) - - [🌐翻译指南文章和编码挑战](#translate-guide-articles-and-coding-challenges) +- [🌐 翻译指南文章和编码挑战](#翻译指南文章和编码挑战) - - [🛠帮助我们修复freeCodeCamp.org学习平台中的错误](#help-us-fix-bugs-in-freecodecamporgs-learning-platform) +- [🛠 帮助我们修复freeCodeCamp.org学习平台中的错误](#帮助我们修复freeCodeCamp.org学习平台中的错误) -###研究,编写和更新我们的指南文章 +### 研究,编写和更新我们的指南文章 **什么是指南文章?** 指南文章可帮助您快速了解技术概念。它是用简短,简单的英语解释,您可以在阅读更深入的资源之前先阅读这些解释。 -您可以在这里找到[关于HTML元素的示例文章](https://github.com/freeCodeCamp/freeCodeCamp/blob/master/guide/english/html/elements/a-tag/index.md)。 +您可以在这里找到[关于HTML锚点元素的示例文章](https://github.com/freeCodeCamp/freeCodeCamp/blob/master/guide/english/html/elements/a-tag/index.md)。 **我能写一篇关于什么的文章?** @@ -58,34 +58,34 @@ freeCodeCamp.org的存在是因为像你这样的数千名志愿者。我们很 您可以在我们的[指南网站](https://www.freecodecamp.org/guide)上找到一个“存根文章”,写下您的文章,然后建立pull request以替换存根文章。 [pull request](https://help.github.com/articles/about-pull-requests/)是您建议更改的方式。它让其他人了解您的更改,审核并采用它们。 -如果您找不到关于您想要撰写的主题的存根,则可以打开创建存根的PR并包含您的草稿文章。 +如果您找不到关于您想要撰写的主题的存根,则可以开一个PR,创建有关存根并包含您的草稿文章。 如果您想帮助改进指南文章,请参阅[如何编辑指南文章](/docs/how-to-work-on-guide-articles.md)。 -###创建,更新编码挑战和修复其中的错误 +### 创建,更新编码挑战和修复其中的错误 我们所有的编码挑战都由社区策划,以从您这样的志愿者那里获取专业知识。 -您可以帮助扩展它们并使其措辞更加清晰。您可以更新用户故事以更好地解释概念,甚至删除多余的概念。您还可以改进挑战测试,使其更准确地测试他人的代码。 +您可以帮助扩展它们并使其措辞更加清晰。您可以更新用户故事以更好地解释概念,甚至删除多余的概念。您还可以改进挑战测试,使其更准确地测试人们的代码。 -如果您对改进这些编码挑战感兴趣,请参阅[如何处理编码挑战](/docs/how-to-work-on-coding-challenges.md)。 +如果您对改进这些编码挑战感兴趣,请参阅[如何处理编码挑战](/docs/chinese/how-to-work-on-coding-challenges.md)。 -###翻译指南文章和编码挑战 +### 翻译指南文章和编码挑战 您可以帮助我们将指南文章和编码挑战翻译成您所说的语言。目前我们已翻译版本: - - [中文(中文)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/chinese) - - [俄语(русский)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/russian) - - [阿拉伯语(عربى)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/arabic) - - [西班牙语(西班牙语)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/spanish) - - [葡萄牙语(葡萄牙语)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/portuguese) +- [中文(中文)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/chinese) +- [俄语(русский)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/russian) +- [阿拉伯语(عربى)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/arabic) +- [西班牙语(西班牙语)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/spanish) +- [葡萄牙语(葡萄牙语)](https://github.com/freeCodeCamp/freeCodeCamp/tree/master/curriculum/challenges/portuguese) 我们非常欢迎您的贡献以帮助提高翻译质量。数百万人已经在使用freeCodeCamp.org的英语版本,我们也希望还有数百万人使用这些翻译版本。 -###帮助我们修复freeCodeCamp.org学习平台中的错误 +### 帮助我们修复freeCodeCamp.org学习平台中的错误 -我们的学习平台运行在现代JavaScript堆栈上。它有各种组件,工具和库,包括但不限于Node.js,MongoDB,LoopBack,OAuth 2.0,React,Gatsby,Webpack等。 +我们的学习平台运行在现代的JavaScript技术栈上。它有各种组件,工具和库,包括但不限于Node.js,MongoDB,LoopBack,OAuth 2.0,React,Gatsby,Webpack等。 简单的说, @@ -98,19 +98,17 @@ freeCodeCamp.org的存在是因为像你这样的数千名志愿者。我们很 基本上我们期望您对于以上的一些技术,工具和库有某些基本的熟悉程度。但是,您不需要是这些领域的专家。 -如果您对于以上相关问有任何疑问,请在相关的主题上向我们提问,我们将很乐意的为您澄清。您也可以联系Mrugesh Mohapatra [`@isedadead`](https://github.com/raisedadead)或Stuart Taylor [`@bouncey`](https://github.com/bouncey)为您提供帮助。 - -如果您想帮助我们改进代码库,请参阅[如何在本地设置freeCodeCamp](/docs/how-to-setup-freecodecamp-locally.md)。 +如果您对于以上相关问有任何疑问,请在相关的主题上向我们提问,我们将很乐意的为您澄清。您可以联系我们的平台开发团队中的Mrugesh Mohapatra [`@isedadead`](https://github.com/raisedadead) 或Stuart Taylor [`@bouncey`](https://github.com/bouncey) 为您提供帮助。 +如果您想帮助我们改进代码库,请参阅[如何在本地启动freeCodeCamp](/docs/how-to-setup-freecodecamp-locally.md)。 ## 常见的疑问 - **如何报告不在记录里的问题?** 如果您认为自己发现了错误,请先阅读[“请帮忙!我发现了一个错误”](https://forum.freecodecamp.org/t/how-to-report-a-bug/19543)文章并按照其说明进行操作 -如果您确信这是一个新错误,请继续创建一个新的GitHub问题。请务必尽可能多地包含信息,以便我们重现错误。我们有一个预定义的问题模板来帮助您完成此报告。 +如果您确信这是一个新错误,请继续创建一个新的GitHub问题。请务必尽可能多地包含信息,以便我们能重现错误。我们有一个预定义的问题模板来帮助您完成此报告。 请注意,任何寻求编码帮助挑战的问题都将被关闭。问题跟踪器严格用于与代码库相关的问题和讨论。您应该[在论坛上寻求帮助](https://www.freecodecamp.org/forum), 然后在有疑问时进行报告。 @@ -122,8 +120,8 @@ freeCodeCamp.org的存在是因为像你这样的数千名志愿者。我们很 您可以透过以下的管道: - - [公共论坛里的“贡献者”类别](https://www.freecodecamp.org/forum/c/contributors) - - [我们的公共贡献者于Gitter中的聊天室](https://gitter.im/FreeCodeCamp/Contributors) +- [我们公共论坛上的“贡献者”类别](https://www.freecodecamp.org/forum/c/contributors) +- [我们的公共贡献者在Gitter的聊天室](https://gitter.im/FreeCodeCamp/Contributors) 我们很高兴能帮助您为您想要处理的任何课题做出贡献。确保在发布新查询之前搜索您的查询。请务必要有礼貌和耐心。我们的社区志愿者和主持人随时为您提供指导。 @@ -135,7 +133,7 @@ freeCodeCamp.org的存在是因为像你这样的数千名志愿者。我们很 我们的社区版主[分类](https://en.wikipedia.org/wiki/Software_bug#Bug_management) 根据优先级,严重程度和其他因素发出请求。您可以[在这里找到一个完整的含义词汇表](https://github.com/freecodecamp/freecodecamp/labels)。 -您应该通过**“求助”**或**“欢迎新手”**问题快速查找您可贡献的项目。这些都是可以自行进行,并不需要批准。 +您应该通过[**“求助”**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)或[**“欢迎新手”**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22first+timers+welcome%22)快速查找您可以贡献的项目。这些都是可以自行进行,并不需要批准。 如果这些项目缺乏明确的需求,请在评论中提问。 diff --git a/docs/chinese/README.md b/docs/chinese/README.md index d79a7db493b..8fc29b7b683 100644 --- a/docs/chinese/README.md +++ b/docs/chinese/README.md @@ -1,7 +1,7 @@
Read these guidelines in 此指南可阅读的语言版本 English 中文 русский
- - + + diff --git a/docs/chinese/how-to-setup-freecodecamp-locally.md b/docs/chinese/how-to-setup-freecodecamp-locally.md index 004def98fb3..3d0d216ed82 100644 --- a/docs/chinese/how-to-setup-freecodecamp-locally.md +++ b/docs/chinese/how-to-setup-freecodecamp-locally.md @@ -1,79 +1,79 @@
Read these guidelines in English 此指南可阅读的语言版本 English 中文 русский عربي
- - - - - - - + + + + + + +
Read these guidelines in English 中文 русский عربي Español Português 此指南可阅读的语言版本 English 中文 русский عربي Español Português
-#在本地设置freeCodeCamp +# 在本地启动freeCodeCamp 请遵循以下准则,以便在系统上本地获取freeCodeCamp。如果您想定期参与,强烈建议您这样做。 一些贡献工作流程,如预览指南页面或编码挑战,调试和修复代码库中的错误,需要您在本地运行freeCodeCamp。 -##在GitHub上分叉存储库 +## 在GitHub上Fork代码库 -['Forking'](https://help.github.com/articles/about-forks/)是您在GitHub上获得自己的freeCodeCamp主存储库(a.k.a _repo_)副本的步骤。 +[“Fork”](https://help.github.com/articles/about-forks/)是您在GitHub上获得自己的freeCodeCamp主代码库(a.k.a _repo_)副本的步骤。 这是必不可少的,因为这样您就可以在GitHub上处理freeCodeCamp的副本,或者下载它以便在本地工作。稍后,您将能够通过拉取请求请求将更改拖入主存储库。 > ** ProTip:** ->`https:// github.com / freeCodeCamp / freeCodeCamp`的主存储库通常被称为`upstream`存储库。 ->您在`https:// github.com / YOUR_USER_NAME / freeCodeCamp`的分支通常被称为`origin`存储库。 +> `https:// github.com / freeCodeCamp / freeCodeCamp`的主存储库通常被关联为`upstream`存储库。 +> 您在`https:// github.com / YOUR_USER_NAME / freeCodeCamp`的分支通常被关联为`origin`存储库。 -**按照以下步骤分叉`https:// github.com / freeCodeCamp / freeCodeCamp`存储库:** +**按照以下步骤Fork`https:// github.com / freeCodeCamp / freeCodeCamp`存储库:** -1.转到GitHub上的freeCodeCamp存储库: -2.单击界面右上角的“Fork”按钮([更多详细信息](https://help.github.com/articles/fork-a-repo/)) -3.存储库分叉后,您将被带到https:// github.com / YOUR_USER_NAME / freeCodeCamp的freeCodeCamp副本。 +1. 转到GitHub上的freeCodeCamp存储库: +2. 单击界面右上角的“Fork”按钮([更多详细信息](https://help.github.com/articles/fork-a-repo/)) +3. 存储库分叉后,您将被带到https:// github.com / YOUR_USER_NAME / freeCodeCamp的freeCodeCamp副本。 -![GIF - 如何在Github上派生freeCodeCamp](/ docs / images / github / how-to-fork-freeCodeCamp.gif) +![GIF —— 如何在Github上“Fork” freeCodeCamp](/docs/images/github/how-to-fork-freeCodeCamp.gif) -##准备开发环境 +## 准备开发环境 安装必备组件后,需要为开发环境做好准备。这在许多开发工作流程中很常见,您只需要执行一次。 **按照以下步骤准备好开发环境:** -1.如果您还没有安装[Git](https://git-scm.com/)或您喜欢的Git客户端。更新到最新版本,与您的操作系统捆绑的版本可能已过时。 +1. 如果您还没有安装[Git](https://git-scm.com/)或您喜欢的Git客户端。更新到最新版本,与您的操作系统捆绑的版本可能已过时。 -2.(可选但建议)为GitHub设置[SSH密钥](https://help.github.com/articles/generating-an-ssh-key/)。 +2. (可选但建议)为GitHub设置[SSH密钥](https://help.github.com/articles/generating-an-ssh-key/)。 -3.安装您选择的代码编辑器。 +3. 安装您选择的代码编辑器。 + + 我们强烈建议使用[VS Code](https://code.visualstudio.com/)或[Atom](https://atom.io/)。这些是一些很棒的免费和开源代码编辑器。 -    我们强烈建议使用[VS Code](https://code.visualstudio.com/)或[Atom](https://atom.io/)。这些是一些很棒的免费和开源代码编辑器。 +4. 为您的代码编辑器设置linting。 -4.为您的代码编辑器设置linting。 + 您应该[在您的编辑器中运行ESLint](http://eslint.org/docs/user-guide/integrations.html),它将突出显示任何不符合[freeCodeCamp的JavaScript样式指南](http//forum.freecodecamp.org/t/free-code-camp-javascript-style-guide/19121)的内容。 + + > 请不要忽略任何掉毛错误。它们旨在帮助您,并确保干净简单的代码库。 -您应该[在您的编辑器中运行[ESLint](http://eslint.org/docs/user-guide/integrations.html),它将突出显示任何不符合[freeCodeCamp的JavaScript样式指南]的内容(http:/ /forum.freecodecamp.org/t/free-code-camp-javascript-style-guide/19121)。 +## 克隆你的freeCodeCamp副本 -    >请不要忽略任何掉毛错误。它们旨在帮助您,并确保干净简单的代码库。 - -##克隆你的freeCodeCamp副本 - -['Cloning'](https://help.github.com/articles/cloning-a-repository/)是一个步骤,您可以**下载**您或其他人拥有的存储库副本一个“远程”位置。在你的情况下,这个远程位置是freeCodeCamp存储库的`fork`,应该可以在`https:// github.com / YOUR_USER_NAME / freeCodeCamp`获得。 +["克隆"](https://help.github.com/articles/cloning-a-repository/)是一个步骤,您可以**下载**一个属于您或其他人“远端”位置存储库的副本。在这里,这个远端位置是freeCodeCamp存储库的`fork`,你可以在`http//github.com/YOUR_USER_NAME/freeCodeCamp`获得。 在本地计算机上运行以下命令: -1.在项目目录中打开终端/命令提示符/ Bash Shell +1. 在项目目录中打开终端/命令提示符/Bash Shell + + _i.e。:`/ yourprojectdirectory /`_ -    _i.e。:`/ yourprojectdirectory /`_ +2. 克隆你的freeCodeCamp的fork,用你的GitHub用户名替换`YOUR_USER_NAME` -2.克隆你的freeCodeCamp的fork,用你的GitHub用户名替换'YOUR_USER_NAME` - -    ```壳 -    git clone https://github.com/YOUR_USER_NAME/freeCodeCamp.git -    ``` + ```shell + git clone https://github.com/YOUR_USER_NAME/freeCodeCamp.git + ``` 这会将整个freeCodeCamp存储库下载到您的项目目录中。 -##在主存储库中设置`upstream` +## 在主存储库中设置`upstream` 现在你已经下载了fork的副本,你需要设置一个`upstream`。 @@ -81,46 +81,46 @@ 除了`origin`之外,你还需要将你的本地克隆指向`upstream`。这样您就可以同步主存储库中的更改。这样您就不必一次又一次地进行分叉和克隆。 -1.将目录更改为新的freeCodeCamp目录: +1. 将目录更改为新的freeCodeCamp目录: + + ```shell + cd freeCodeCamp + ``` -    ```壳 -    cd freeCodeCamp -    ``` +2. 将遥控器添加到主freeCodeCamp存储库: -2.将遥控器添加到主freeCodeCamp存储库: + ```shell + git remote add upstream https://github.com/freeCodeCamp/freeCodeCamp.git + ``` -    ```壳 -    git remote add upstream https://github.com/freeCodeCamp/freeCodeCamp.git -    ``` +3. 检查配置看起来不错: -3.检查配置看起来不错: + ```shell + git remote -v + ``` -    ```壳 -        git remote -v -    ``` + 输出应如下所示: -        输出应如下所示: + ```shell + origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (fetch) + origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (push) + upstream https://github.com/freeCodeCamp/freeCodeCamp.git (fetch) + upstream https://github.com/freeCodeCamp/freeCodeCamp.git (push) + ``` -    ```壳 -        来源https://github.com/YOUR_USER_NAME/freeCodeCamp.git(获取) -        来源https://github.com/YOUR_USER_NAME/freeCodeCamp.git(推) -        上游https://github.com/freeCodeCamp/freeCodeCamp.git(获取) -        上游https://github.com/freeCodeCamp/freeCodeCamp.git(推送) -    ``` - -##在您的计算机上本地运行freeCodeCamp +## 在您的计算机上本地运行freeCodeCamp 现在您已拥有freeCodeCamp的本地副本,您可以按照这些说明使其在本地运行。这将有助于您: - - 预览对学习平台上显示的页面的编辑。 - - 处理与UI相关的问题和增强功能。 - - 调试和修复应用程序服务器和客户端应用程序中的问题。 +- 预览对学习平台上显示的页面的编辑。 +- 处理与UI相关的问题和增强功能。 +- 调试和修复应用程序服务器和客户端应用程序中的问题。 如果您只是编辑文件,执行`rebase`或解决`merge`冲突,您可以跳过本地运行freeCodeCamp。您以后可以随时返回这部分说明。 -[跳过本地运行freeCodeCamp](#making-changes-to-your-clone-of-freecodecamp-local) +[跳过本地运行freeCodeCamp](#making-changes-to-your-clone-of-freecodecamp-local) -###安装先决条件 +### 安装先决条件 首先安装这些必备软件。 @@ -135,13 +135,13 @@ 我们强烈建议您更新上述最新的稳定版本a.k.a长期支持(LTS)版本。 如果您的计算机上已安装Node.js或MongoDB,请运行以下命令以验证版本: -```壳 -节点-v +```shell +mode -v mongo --version npm -v ``` ->如果您有不同的版本,请安装推荐的版本。我们只支持推荐版本的安装问题。 +> 如果您有不同的版本,请安装推荐的版本。我们只支持推荐版本的安装问题。 **我在安装推荐的先决条件时遇到问题。我该怎么办?** @@ -151,145 +151,321 @@ npm -v 我们无法在GitHub上为您提供支持,因为软件安装问题超出了本项目的范围。 -###安装依赖项 +### 安装依赖项 -首先安装应用程序启动所需的依赖项。 +首先,你需要添加私有环境变量(API密钥): -```壳 -#安装NPM依赖项 -npm安装 -``` +```shell +# 创建“sample.env”的副本并将其命名为“.env”。 +# 使用必要的API密钥和秘密填充它: -然后,您需要添加私有环境变量(API密钥): - -```壳 -#创建“sample.env”的副本并将其命名为“.env”。 -#使用必要的API密钥和秘密填充它: - -#macOS / Linux +# macOS / Linux 环境下 cp sample.env .env -#Windows +# Windows 环境下 copy sample.env .env ``` + +然后,你需要安装应用启动需要的依赖。 + +```shell +# 安装NPM依赖项 +npm install +``` + 无需更改密钥即可在本地运行应用程序。您可以保留`sample.env`中的默认值。 `MONGOHQ_URL`是最重要的一个。除非您在不同于默认值的设置中运行MongoDB,否则`sample.env`中的URL应该可以正常工作。 您可以保留其他键。请记住,如果您想使用更多服务,您必须为这些服务获取自己的API密钥,并在`.env`文件中相应地编辑这些条目。 -接下来,引导各种服务,即api-server,客户端UI应用程序等。您可以[在本指南中了解有关这些服务的更多信息](#)。 - -通过引导,您将绑定服务之间的链接。他们是半独立的。这意味着,在生产中,这些服务会部署到自己的位置,但在本地运行时,您希望它们都可供您使用。 - -```壳 -#引导此存储库中的所有项目 -npm运行bootstrap -``` - -###启动MongoDB +### 启动MongoDB 在启动应用程序之前,您需要启动MongoDB: 在单独的终端中启动MongoDB服务器 - - 在macOS和Ubuntu上: +- 在macOS和Ubuntu上: -    ```壳 -    的mongod -    ``` + ```shell + mongod + ``` - - 在Windows上,您必须指定`mongod`二进制文件的完整路径 - -    确保用您安装的版本替换`3.6` - -    ```壳 -    “C:\ Program Files \ MongoDB \ Server \ 3.6 \ bin \ mongod” -    ``` +- 在Windows上,您必须指定`mongod`二进制文件的完整路径 + 确保用您安装的版本替换`3.6` + + ```shell + "C:\Program Files\MongoDB\Server\3.6\bin\mongod" + ``` > ProTip: ->通过将其作为后台服务安装,您可以避免每次都启动MongoDB。 ->您可以[在他们的操作系统文档中了解更多信息](https://docs.mongodb.com/manual/administration/install-community/) +> 通过将其作为后台服务安装,您可以避免每次都启动MongoDB。 +> 您可以[在他们的操作系统文档中了解更多信息](https://docs.mongodb.com/manual/administration/install-community/) -###播种数据库 +### 播种数据库 接下来,让数据库播种。在此步骤中,我们运行以下命令,该命令将使MongoDB服务器填充其他服务所需的一些初始数据集。这包括一些模式,以及其他内容。 -```壳 +```shell npm run seed ``` -###开始freeCodeCamp客户端应用程序和API服务器 + +### 开始freeCodeCamp客户端应用程序和API服务器 + 您能现在开始API服务器和客户端应用程序。 -```壳 -npm奔跑开发 -这 -单一命令将射击所有服务的```包括API服务器和客户端应用程序可利用为您运作。 -现在打开浏览器并且参观< http://localhost:8000 >。 如果app装载,祝贺-您是全部设置了。 -> ProTip : +```shell +npm run develop +``` + +这单一命令将启动所有服务,包括API服务器和客户端应用程序都会为您运行。 +现在打开浏览器并且访问。 如果app运行,祝贺-您是全部设置好了。 + +> 专业小贴士 : > > API服务器服务APIs在`http://localhost:3000 ` > Gatsby app为客户端应用程序服务在`http://localhost:8000 ` -意思,如果您参观< http://localhost:3000/explorer >您应该看APIs我们有。 -祝贺🎉! 您现在有freeCodeCamp的整个学习的平台的拷贝运行在您的地方机器的。 -##快的命令参考当工作地方 -[这一个即时参考](/docs/README.md)时在您可能时常当地需要命令的名单: -当地做对freeCodeCamp您的克隆的##变动 -其次,您能做对文件的变动,并且做您的变动。 -跟随这些步: -1.一旦提交了編輯內容,系統將提示您在fork的GitHub頁面上創建一個拉取請求。 -    ![圖片 - 比較GitHub上的拉取請求提示](/ docs / images / github / compare-pull-request-prompt.png) +意思是,如果您参观您可以看到我们有的API。 -2.默認情況下,所有pull請求都應該針對freeCodeCamp主repo,`master`分支。 +祝贺🎉! 您现在有freeCodeCamp的整个学习的平台的拷贝运行在您的本地机器上。 -    提出拉取請求時,請確保將Base Fork設置為freeCodeCamp / freeCodeCamp。** +## 本地启动应用快捷命令参考 -    ![圖片 - 在提出拉取請求時比較叉子](/ docs / images / github / comparison -forks-for-pull-request.png) +[这有一些快捷参考](/docs/chinese/README.md),列举出了当你在本地启动项目是时常需要的一些命: -3.將分支的pull請求提交給freeCodeCamp的`master`分支。 +## 对克隆到本地的freeCodeCamp代码进行改动 -4.在PR的正文中包含更詳細的摘要,包括您所做的更改以及原因。 +接下来,您能对文件做改动,并保存(commit)你的改动。 -     - 您將看到一個拉取請求模板。這是在打開拉取請求之前應該遵循的清單。 +遵循以下步骤: -     - 填寫適合您的詳細信息。我們將審核此信息,並決定是否接受您的提款請求。 +1. 检查你是否在 `master` 分支上 -     - 如果PR旨在解決現有的錯誤/問題,那麼,在結束時 -      你PR的描述,附加關鍵字`closes`和#xxxx(其中xxxx -      是問題編號)。示例:`關閉#1337`。這告訴GitHub -      如果PR被接受並合併,則自動關閉現有問題。 + ```shell + git status + ``` -5.表明您是否在本地網站上進行過測試。 + 你可能会得到如下输出: -    當您進行非複制編輯降價文件的更改時,這非常重要。例如,對CSS或JavaScript代碼等的更改 + ```shell + On branch master + Your branch is up-to-date with 'origin/master'. -##讓你的PR接受 + nothing to commit, working directory clean + ``` + + 如果你不是在master分支上或者你工作的文件夹不干净, 消除所有未完成的文件/保存并且切换到`master`分支上: + + ```shell + git checkout master + ``` + +2. 接下来,你可能想从freeCodeCamp主代码库**同步`master`分支最新的修改**。 + + **提示:**如果你有任何未完成的之前以你Fork的代码库的`master`分支发起的拉取请求,你将会丢失掉他们。 你应该让一个主持人优先跟进,合并它们。为了避免这种情况,你应当总是在一个分支上工作。 + + 尽量经常做此操作, 以避免日后造成冲突: + + ```shell + git fetch upstream + ``` + + 现在,你可能想让副本相对于freeCodeCamp的master代码分支做一个硬性重置: + + ```shell + git reset --hard upstream/master + ``` + + 推送你的分支到你名为origin的远端代码库,以清理你在GitHub上Fork的代码库的历史纪录: + + ```shell + git push origin master --force + ``` + +3. 接下来, 你需要创建一个新的分支。 + + 为每个单独的问题创建一个分离的分支进行处理,会帮助你保持你的本地副本库干净。你永远不要在`master`分支上工作。否则会弄脏你的freeCodeCamp副本,而且你可能不得不通过重新克隆或者Fork来重新开始。 + + 像之前讲解的那样检查是否在`master`分支上,创建一个新的分支并离开这个分支: + + ```shell + git checkout -b fix/update-guide-for-xyz + ``` + + 你的分支名应该以 `fix/`、`feat/` 等开始。要避免在分支名中使用问题的编号。保持名称短小,有意义并且唯一。 + + 如下,一些比较不错的分支命: + + ```md + fix/update-challenges-for-react + fix/update-guide-for-html-css + fix/platform-bug-sign-in-issues + feat/add-guide-article-for-javascript + translate/add-spanish-basic-html + ``` + +4. 接下来,你可以在你喜欢的编辑器上编辑页面和代码了。 + +5. 一旦对你的修改满意了,你亏启动本地freeCodeCamp项目来预览你的修改。 + +6. 确保你修复任意的错误并检查你的修改格式。我们有指南文章和代码挑战和风格指南。 + +7. 接下来,检查和确认你更新的文件 + + ```shell + git status + ``` + + 这个命令会显示一个你编辑过但`未缓存的`文件列表。 + + ```shell + On branch feat/documentation + Your branch is up to date with 'upstream/feat/documentation'. + + Changes not staged for commit: + (use "git add/rm ..." to update what will be committed) + (use "git checkout -- ..." to discard changes in working directory) + + modified: CONTRIBUTING.md + modified: docs/README.md + modified: docs/how-to-setup-freecodecamp-locally.md + modified: docs/how-to-work-on-guide-articles.md + ... + ``` + +8. 缓存修改并保存。 + + 这部你只需要标记你修改或添加的文件。你可以执行一下重置,并且消除那些你不想修改的文件。 + + ```shell + git add path/to/my/changed/file.ext + ``` + + 或者, 可选地你可以添加所`未缓存的`文件到缓存区域: + + ```shell + git add . + ``` + + 当你执行保存的时候,只有添加到缓存区的修改才会被保存。 + + ```shell + git status + ``` + + 输出: + ```shell + On branch feat/documentation + Your branch is up to date with 'upstream/feat/documentation'. + + Changes to be committed: + (use "git reset HEAD ..." to unstage) + + modified: CONTRIBUTING.md + modified: docs/README.md + modified: docs/how-to-setup-freecodecamp-locally.md + modified: docs/how-to-work-on-guide-articles.md + ``` + + 现在, 你可以像这样附带一个短信息保存你的修改: + + ```shell + git commit -m "fix: my short commit message" + ``` + + 一些例子: + + ```md + fix: update guide article for Java - for loop + feat: add guide article for alexa skills + ``` + + 可选的: + + 我们高度推荐提交约定保存信息。这是一个你可以在其他一些流行的开源库上看到最佳实践。作为一个开发者,这鼓励你遵循标准实践 + + 一些约定的保存信息例子: + + ```md + fix: update HTML guide article + fix: update build scripts for Travis-CI + feat: add article for JavaScript hoisting + docs: update contributing guidelines + ``` + + 保持短小, 不要超过50个字母。你可以一直在保存信息的描述上添加额外信息。 + + 这并不会比'update file'或者'add index.md'这样的非约定信息消耗更多额外的时间。 + + 你可以通过[这里](https://www.conventionalcommits.org/en/v1.0.0-beta.2/#why-use-conventional-commits)了解更多关于我们为什么需要使用约定保存。 + +9. 如果你在做了保存后意识到你需要编辑一个文件或者更新保存信息,在编辑文件之后这样做: + + ```shell + git commit --amend + ``` + + 这会打开一个默认的像`nano`或`vi`的文本编辑器,你可以在上面编辑保存信息标题并且添加/编辑描述。 + +10. 接下来,你可以推送你的修改到你的Fok仓库了。 + + ```shell + git push origin branch/name-here + ``` +## 提交一个拉取请求(Pull Request——PR) -##獲得幫助 +1. 一旦提交了编辑內容,系统将提示您在fork的GitHub页面上创建一个拉取请求。 -如果您遇到困難並需要幫助,請通過我們論壇上的['貢獻者'類別](https://www.freecodecamp.org/forum/c/contributors)或[貢獻者聊天室]詢問我們(關於Gitter的https://gitter.im/FreeCodeCamp/Contributors)。 + ![Image - Compare pull request prompt on GitHub](/docs/images/github/compare-pull-request-prompt.png) -您的瀏覽器控制台或Bash /終端/命令行中可能存在錯誤,有助於識別問題。 +2. 默认情况下,所有拉取请求都应该针对freeCodeCamp主代码库的`master`分支。 + + 提出拉取请求时,请确保将Base Fork设置为freeCodeCamp/freeCodeCamp。 + + ![Image - Comparing forks when making a pull request](/docs/images/github/comparing-forks-for-pull-request.png) -### 故障排除 +3. 将分支的拉取求提交给freeCodeCamp的`master`分支。 + +4. 在PR的正文中包含尽量详细的摘要,包括您所做的更改以及原因。 + +     - 您將看到一個拉取请求模板。这是在打开拉取請求之前应该遵循的清单。 + +     - 填写适合您的详细信息。我们将核对此信息,并决定是否接受您的拉取请求。 + +     - 如果PR旨在解决现有的错误/问题,那么,在结束时 +      你PR的描述,附加关键字`closes`和#xxxx(其中xxxx +      是问题编号)。示例:`close#1337`。這告訴GitHub +      如果PR被接受并合并,则自动关闭现有问题。 + +5. 表明您是否在本地网站上进行过测试。 + +    当您进行非复制编辑markdown文件的修改时,这非常重要。例如,对CSS或JavaScript代码等的更改。 + +## 获取帮助 + +如果您遇到困难并需要帮助,请通过我们论坛上的['贡献者'类別](https://www.freecodecamp.org/forum/c/contributors)或在Gitter上的[贡献者者聊天室](https://gitter.im/FreeCodeCamp/Contributors)询问我們。 + +您的浏览器控制台或Bash/終端/命令行中可能存在錯誤有助於识別問題。 + +### 故障排除 如果應用程序啟動但您遇到UI本身的錯誤,例如,如果未加載字體或代碼編輯器未正確顯示,您可以嘗試至少一次以下故障排除步驟: -```殼 -#刪除所有已安裝的節點模塊 +```shell +# 刪除所有已安裝的節點模塊 rm -rf node_modules ./**/node_modules -#重新安裝npm包 +# 重新安裝npm包 npm安裝 -#引導項目 +# 引導項目 npm運行bootstrap -#種子數據庫 +# 種子數據庫 npm run seed -#重新啟動應用程序 +#重新啟動應用程序 npm run develop -``` \ No newline at end of file +```