如何开始为开源项目做贡献?

如何开始为开源项目做贡献?

原文:https://medium.com/hackernoon/how-to-start-contributing-to-open-source-projects-e3c36ebb54e6

如果你曾经想为开源项目做贡献,但是不知道从哪里开始,这里有一些让你开始的提示。

对你选择的一种编程语言有很好的理解

理解编程语言不仅仅是知道语法或者递归是如何工作的。如果你已经知道了,那太好了!你已经通过了第一关。接下来,您需要学习将在任何大中型项目中使用的多个主要库和包。查找你的编程语言的相关库,花时间学习它们。很好地理解这些将有助于你更好地理解任何代码库。

版本控制系统

是的,这就是 Github 的用武之地。分布式修订控制(DVCS)是进行协作编码的一种方式,它确保所有代码在任何给定的时间点都保持安全和并发。所有的组织/项目都使用某种形式的版本控制。主要的是 SVN 和 Git。尽管现在,几乎每个组织/项目都因为 Git 的一些特性而转向了 Git,但有些可能仍在使用 SVN。Github 只是一个 Git 客户端,可以让你在线托管你的代码。学习 Github 和学习 Git 不一样。因此,首先,学习 Git — book,然后,继续学习如何使用 Github。为了快速参考,你也可以使用这个:试试 Git

学会阅读源代码

阅读看似庞大的代码库的能力是无可替代的。让我们面对现实吧,任何代码的大部分文档都会让任何人感到困惑。它可能对最终用户有用,但是对于任何新的开发者来说,它可能看起来像是胡言乱语。当你需要浏览包含成百上千行代码和上百个文件的源代码时,你只能靠自己了。

一个人从哪里开始?嗯,看情况。学习如何使用 bug 或问题追踪器,很可能每个组织/项目都会有。如果你不知道什么是软件缺陷,现在是开始的好时机。Bug 追踪器就像我们之前提到的版本控制系统。事实上,大多数版本控制客户端都有一个 bug 跟踪器的实现。Github 有一个“问题”系统,这是一回事。一个 bug 追踪器,基本上,列出了软件当前识别的所有【问题】(或者 bug)以及它们的【状态】(它们解决了吗?未解决?正在努力吗?).Bug 追踪器为非开发人员的最终用户提供了一种指出软件中问题的方法。它们也可能被用来请求一个新的特性,这不同于一个 bug。

提交补丁

一旦你学会了以上所有内容(相信我,这并不多),你就可以向你选择的项目提交一些补丁或错误修复了。选择任何一个开源项目——最好是用你知道的语言编写的,更重要的是,让你感兴趣——然后浏览它的 bug 跟踪器。大多数 bug 追踪器的问题都被标记为自愿的或介绍性的。搜索这样的问题,或者进行任何你认为可以解决的问题。评论或更新这个问题,说你正在着手处理。在您的本地系统上解决它(一旦您知道如何使用版本控制,您就会知道这是什么),然后将其推送到组织的远程代码库。这说起来容易做起来难(实话实说吧)。您至少需要知道以下几点:

  1. 项目使用的 DVCS。
  2. 他们的代码贡献工作流程是怎样的?(大多数组织/项目都有提交补丁的明确方法,您必须遵循该方法)。
  3. 如何融入社区?

问一些聪明的问题

一旦你开始为一个项目做贡献,你面临困难。

你可能不知道一段特定的代码是如何工作的,或者你可能不知道所需的技术。这是你问的时候了。一般来说,询问该项目的开发人员,或者任何你认为可能知道答案的人。询问并不是软弱的表现,相反,它会帮助你度过许多不必要的挣扎。但同时,请记住,如何以聪明的方式提问

阅读这篇由 Sahil Dua 撰写的关于学习新编程语言的非常规方法的文章。

请随时在 Twitter 上联系我,并在 www.srijanagarwal.me 查看我的经历。

黑客中午是黑客如何开始他们的下午。我们是 AMI 家庭的一员。我们现在接受投稿并乐意讨论广告&赞助机会。

如果你喜欢这个故事,我们推荐你阅读我们的最新科技故事趋势科技故事。直到下一次,不要把世界的现实想当然!


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除