有兴趣为开源做贡献吗?以下是你需要知道的
你有没有想过为开源做出贡献?如果你在这里,你可能已经想过了😄
对于初学者来说,这似乎令人困惑,我深有同感——我自己也经历过这种情况。然而,你找到了继续学习的动力,并进一步了解了这个过程,我希望这篇文章能让你明白,它并没有想象中那么复杂。
大多数接受贡献的仓库通常都有一个CONTRIBUTING.MD文件,你应该留意一下。由于每个仓库的版本不一样,这个文件会告诉你更多关于向特定仓库贡献代码的流程。
但是,一些通用规则可以应用于大多数存储库,我们将在本文中介绍它们。
支持我们🙏🏻

在我们开始之前,如果您为我们的开源存储库加注星标并帮助我们将我们的
工具展示给其他开发人员,我们将非常感激⭐
在哪里做出贡献?
首先想到的问题是:在哪里做出贡献?
好吧,你应该从你正在使用的项目开始。也许某个库需要更新,或者某个工具有 bug?
您可能希望为您专业领域内的某个项目或使用您熟悉的技术栈的项目做出贡献。
这些都是非常出色的竞争者,你应该好好研究一下他们。
如果您不了解任何项目但仍想做出贡献,请在 GitHub 上浏览或访问Quine等网站,那里有许多开源存储库正在寻找贡献者。
对于本文,我们将使用我们的开源存储库 - Cyclops。
如何知道什么需要改进?
无论您是在寻找要做的事情还是已经知道需要修复的错误,所有贡献都从同一个地方开始 - “问题”选项卡。
如果您是项目新手,可以查找大多数仓库都有的“ good first issue”标签。顾名思义,它们是参与项目的良好切入点。所有 issue 都应该包含问题描述。
如果您发现此处未列出的问题或错误,或者您希望看到新功能的引入,请提交新问题!提交问题后,维护人员将决定下一步操作,您应该等待他们的回复后再开始编码。
专业提示:如果您打开了一个错误问题,请务必写下如何重现该错误的步骤!
如何贡献?
好的,我们找到了一个代码库,找到了一个我们想要解决的问题,并与维护人员进行了沟通,并获得了处理该问题的许可。让我们开始编码吧!
1. fork 仓库
第一步是fork仓库。这将复制项目并将其添加到你的 GitHub 帐户。
2. 克隆仓库
现在前往你的代码库并找到 fork 的版本库。点击< > 代码按钮,然后选择以下选项之一(HTTPS / SSH / GitHub CLI)。
复制框中的内容。现在打开终端,并将自己定位到要本地保存项目的位置。定位完成后,在终端中输入以下命令:
git clone <paste the copied content>
片刻之后,您的电脑上就应该有本地项目了!
3. 创建新分支
现在,前往你的本地文件夹并创建一个新的分支。请务必查看项目的CONTRIBUTE.md文件,看看维护人员是否希望你遵循一些分支命名规则!
4. 提交并推送你的更改
分支准备就绪后,即可开始修改代码库。完成后,提交更改并将其推送到您 fork 的仓库。如果仓库有相应的提交信息规范,请务必遵循(请查看CONTRIBUTING.md文件)。
5. 打开拉取请求
现在您已推送更改并希望将其合并到主存储库,是时候创建拉取请求了!再次强调,您应该检查CONTRIBUTING.md规则,看看维护人员是否希望您在创建 PR 时遵循命名约定,以及他们希望在描述中看到什么。
❗务必将 设置base repository
为你 fork 的原始仓库❗
我创建了一个 PR,现在怎么办?
您对更改感到满意,并成功向主代码库创建了拉取请求。接下来做什么?现在,等待。
根据你的 PR 所修复问题的紧急程度以及维护人员的日程安排,你需要等待其他人审核你的 PR。请准备好解释原因以及你做了什么(如果你在 PR 描述中没有做好),并在必要时进行修改。
不要将任何修改请求当真。你们所有人都是为了项目的改进而来,没有人心怀恶意。如果你不同意审阅者的意见,请告诉他们!健康的讨论从来都不是坏事。
为什么要分叉?🍴
你可能想知道我们为什么要 fork 这个仓库。为什么不直接克隆原仓库,然后在一个单独的分支上工作呢?基本上,去掉第一步,剩下的不就一样了吗?
好吧,你可以试试,但是一旦你推送了更改,你就会意识到你没有权限这么做!通过 fork 仓库,你就成为了被复制仓库的所有者,并拥有更改代码库的权限。这是一个巧妙的系统,可以确保只有原始维护者批准的更改才能通过。
去贡献吧!
既然你已经掌握了这些信息,就可以在开源世界中崭露头角了!去帮助那些你听说过或没听说过的项目,加入这个日益壮大的社区吧。我相信,你的帮助一定会得到极大的赞赏😉
你知道有哪些开源项目有很多“优秀首发”标签吗?请在评论区分享!
文章来源:https://dev.to/cyclops-ui/interested-in-contributing-to-open-source-heres-what-you-need-to-know-g1c