Files
first-contributions/docs/gui-tool-tutorials/github-windows-intellij-tutorial.zh-cn.md

127 lines
7.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[![开源之爱](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/)
[<img align="right" width="150" src="https://firstcontributions.github.io/assets/gui-tool-tutorials/github-desktop-tutorial/join-slack-team.png">](https://join.slack.com/t/firstcontributors/shared_invite/zt-1hg51qkgm-Xc7HxhsiPYNN3ofX2_I8FA)
[![许可证: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
[![Open Source Helpers](https://www.codetriage.com/roshanjossey/first-contributions/badges/users.svg)](https://www.codetriage.com/roshanjossey/first-contributions)
# First Contributions(第一次贡献)
| <img alt="IntelliJ IDEA" src="https://upload.wikimedia.org/wikipedia/commons/9/9c/IntelliJ_IDEA_Icon.svg" width="40"> | Intellij IDEA |
| ---------------------------------------------------------------------------------------------------------------------- | ------------- |
第一次做某事总是困难的。尤其是在协作时,犯错误并不是一件舒服的事。但开源的本质就是协作与共同进步。我们希望简化新手学习与第一次参与开源项目的过程。
阅读文章和观看教程是有帮助的,但没有什么比“亲手实践又不会搞砸项目”更好的学习方式了。这个项目的目标是为新手提供指导,并简化他们第一次做出贡献的过程。记住:越放松,学习效果越好。如果你正在寻找第一次开源贡献的机会,只需按照以下简单的步骤操作。我们保证这将是一段有趣的旅程。
如果你还没有安装 IntelliJ IDEA[点击这里安装](https://www.jetbrains.com/idea/download/#section=windows)。
**注意:** 本教程使用的是 IntelliJ IDEA(版本 2019.3.2)在 Windows 10 系统上操作。教程中后续涉及的一些快捷键在 macOS 或 Linux 上可能会有所不同。
---
## Fork 这个仓库
<img align="right" width="300" src="https://firstcontributions.github.io/assets/gui-tool-tutorials/github-desktop-tutorial/fork.png" alt="fork this repository" />
点击页面右上角的 Fork 按钮 Fork 此仓库。这将在你的 GitHub 账户中创建一个此项目的副本。
GitHub 会记录你 Fork 的仓库与原始仓库之间的关系。你可以把你的副本看作是一个工作副本。
大多数顶层 GitHub 仓库(即不是 Fork 而来的)只有一小部分核心团队成员可以直接提交更改。其他所有贡献者必须 Fork 该仓库,修改后提交 Pull Request 请求将更改合并回主仓库。一旦主仓库管理员批准这些更改,它们将被合并,而你将瞬间收获名誉与财富!稍后我们会介绍如何创建 Pull Request。
---
## 克隆你的仓库
<img align="right" width="300" src="https://firstcontributions.github.io/assets/Readme/clone.png" alt="clone this repository" />
下一步是将你的仓库克隆到本地,这样你就可以开始修改内容了。IntelliJ IDEA 需要你的仓库 URL,因此点击仓库页面上的 "Code" 按钮,然后点击“复制”图标。
**注意:** 新手经常犯的一个错误是克隆了原始仓库而不是自己的 Fork 仓库。请确认你复制的是你自己的仓库地址。
现在打开 IntelliJ IDEA。
IntelliJ IDEA 允许你检出(Git 中的 clone)一个已有的仓库,并基于下载的内容创建新项目。
在主菜单中选择 `VCS | Get from Version Control`,或者在没有打开项目时点击欢迎界面中的 `Get from Version Control`
在打开的对话框中,粘贴你仓库的远程地址(你也可以点击 “Test” 测试连接),或从左侧选择一个 VCS 托管服务。如果你已登录某个服务,它会自动列出你可克隆的仓库。
点击 “Clone”。如果你想基于克隆的源代码创建 IntelliJ 项目,在确认对话框中点击 “Yes”。Git 根目录将自动设置为项目根目录。
如果项目包含子模块,它们也会被克隆并注册为项目根。
**重要提示:** 确保克隆的是你自己的 Fork 仓库,而不是原始仓库,否则不会生效。
---
## 创建分支
在 Git 中,分支是一种强大的机制,允许你从主开发线中分离出来,比如开发一个新功能或为发布冻结某个版本等。
在 IntelliJ IDEA 中,所有与分支相关的操作都可以在 Git 分支弹出窗口中完成。点击状态栏中的 Git 小部件,或按 `Ctrl+Shift+\`` 唤出它。
当前检出的分支名称会显示在状态栏的 Git 小部件中。
在弹出窗口中选择 `New Branch`。
在弹出对话框中输入分支名称,确保勾选 “Checkout branch” 选项,这样你会自动切换到新建分支。
新分支会从当前的 HEAD 开始。如果你想从某个旧提交创建分支,可以在 `Version Control` 工具窗口的 `Log` 选项卡(快捷键 Alt+9)中选择一个提交,然后右键选择 `New Branch`。
---
## 进行必要的修改
打开 `Contributors.md` 文件,在文件中的任意位置添加你的名字。该文件使用的是 GitHub Flavored Markdown (GFM) 语法,是 Markdown 的一种扩展格式。
你可以复制其他贡献者的格式,并修改成你的名字,以确保语法正确 —— 有时语法会比较严格。
---
## 提交并推送更改到 GitHub
在 `Version Control` 工具窗口的 `Local Changes` 选项卡中,选择你要提交的文件或整个更改列表,按下 `Ctrl+K` 或点击工具栏上的 `Commit` 按钮。
在弹出的提交对话框中,会列出你自上次提交以来的所有更改文件及新增文件。
输入有意义的提交信息。
你可以按 `Ctrl+M` 打开提交历史,从中选择最近用过的提交信息。
你也可以在推送前随时修改提交信息。
按 `Ctrl+Shift+K` 或从主菜单选择 `VCS | Git | Push`。弹出的 `Push Commits` 窗口会列出当前分支所有未推送的提交。
---
## 提交 Pull Request 请求代码审查
此时你已完成了修改,但这些更改仍然只存在于你自己的仓库中。接下来我们将向原始仓库提交合并请求。
在你的 GitHub 仓库页面上,你会看到一个 “Compare & pull request” 的按钮。点击它。
<img src="https://firstcontributions.github.io/assets/gui-tool-tutorials/github-desktop-tutorial/compare-and-pull.png" alt="创建 Pull Request" />
接下来提交你的 Pull Request。
<img src="https://firstcontributions.github.io/assets/gui-tool-tutorials/github-desktop-tutorial/submit-pull-request.png" alt="提交 Pull Request" />
不久之后,你的更改就会被合并到主仓库的 master 分支中。一旦合并成功,你会收到邮件通知。
---
## 接下来可以做什么?
恭喜!你刚刚完成了标准的 _fork -> clone -> 编辑 -> PR_ 流程,这将是你未来开源贡献中非常常见的工作流程!
庆祝一下你的首次贡献,并通过 [web app](https://firstcontributions.github.io#social-share) 与好友分享你的成就吧!
如果你有任何问题,欢迎加入我们的 Slack 团队:[加入 Slack 团队](https://join.slack.com/t/firstcontributors/shared_invite/zt-1hg51qkgm-Xc7HxhsiPYNN3ofX2_I8FA)
---
### [附加资料](../additional-material/git_workflow_scenarios/additional-material.md)
## 使用其他工具的教程
[返回主页](https://github.com/firstcontributions/first-contributions#tutorials-using-other-tools)