在过去五年我一直参与 Durgapur Linux用户组。我一直为各种开源项目进行贡献。我为开源贡献的主要原因是享受当你发送一个补丁或PR(pull request 提交问题)到一个开源项目的感觉。当数以百万计的人在每天的生活中使用你的一些代码时,这会让你感到幸福。
通过Google Summer of Code和 Super Student,很多人与我联系。他们都有相同的问题。 如何开始?我懂x、y、z语言。我应该对哪个项目贡献?我如何能过滤出一个bug?所以,我想写一篇博客文章来将尝试回答这些问题。但是,首先让我们了解什么是开源软件。 什么是开源软件(OSS)开源软件是指计算机软件的源代码是公开,在各种许可证下可修改和改进分发。“What is open source?”(“开源是什么?“)是一个很好的解读。 我相信读几行代码比读500页书更值得的事实。当你追随优秀程序员编写的代码,在你编码时,你会自动倾向于使用一些很好的实践。 甚至我在大学里学软件工程课题前,我就已经实践了版本控制系统,调试器,任务跟踪,持续集成工具这些知识,这都是由于贡献了一个开源项目。 你让一个优秀的简历从人群中脱颖而出。贡献开源软件可以帮助您构建在线的形象。 但是,这些好话还不能足够帮助你开始。 我如何开始?首先和最重要的事情是选择一个你选择的编程语言。一旦你完成了选择编程语言,寻找一个你可能会感兴趣的项目。 Open Hatch适合像你这样的初学者。Open Hatch 的搜索页面可以基于语言项目过滤bug。Mozilla也有很多基于编程语言过滤的项目, What can I do for Mozilla?(我能为Mozilla做什么) 我如何过滤出bug?老实说,找到一个bug对于一个初学者真是一个辛苦的工作。我面临同样的问题。但我将把如何找到easy bugs(简单的缺陷)和开始为大型组织贡献列出来。 Fedora Fedora Easy Fix page 列出了所有你可以开始的easy fixes(简单的修复)。每个项目列出了你需要联系的项目的维护者。 Fedora基础架构仓库包含一些easy fixes。在issues(任务)仓库部分寻找EasyFix标签。https://github.com/fedora-infra Mozilla Mozilla的开源项目非常简单。给新贡献者提供了很多的入口。 我能为mozilla做什么?这个网站基于你选择的编程技术为你推荐项目。一旦你决定了你的项目,它会带你到相应的mozilla项目。 Bugs Ahoy网站尤其适合新的贡献者。网站基于各种项目比如JS Engine,Devtools,Firefox OS等分类成‘Easy bugs’ 和 ‘Mentored Bugs’。 但是,如果你不知道哪个项目以哪种编程语言为基础。Bugs Ahoy基于编程语言对easy bugs进行了分类,主要有Python、Java、Shell、JS、C / C++、HTML / CSS。你可以使用组合过滤来选择合适的bug来开始。 Mozilla参与页面 Mozilla对已经参与的某个团队的项目进行罗列,包含:
KDE 如果你想开始为KDE贡献,寻找 Junior Jobs(初级职位)标签。像每个组织一样,KDE也包含了如何开始KDE项目的部分。 Getting Started – http://techbase.kde.org/Contribute 入门 – http://techbase.kde.org/Contribute 构建KDE应用程序 – http://techbase.kde.org/Getting_Started/Build 新贡献者的KDE指南 – http://flossmanuals.net/kde-guide/ IRC – #kde-devel on Freenode 邮件列表 – https://mail.kde.org/mailman/listinfo/kde-devel OpenStack OpenStack也是一个优秀的可参与项目。OpenStack项目分为各种组件:Swift, Glance, Nova, Horizon, Keystone等。每个组件都有自己的页面。如果你去 OpenStack Wiki主页,您可以看到分别列出的组件。 每个组件页面包含到仓库的链接,bug追踪器(Launchpad),文档等。OpenStack把初学者级别bug叫做“容易摘到的果子”。 开始 – https://wiki.openstack.org/wiki/How_To_Contribute 如果你是一位开发者 – https://wiki.openstack.org/wiki/How_To_Contribute#If_you.27re_a_developer 文档- docs.openstack.org IRC – #openstack-101, #openstack on Freenode 寻找“容易摘到的果子” Click here! Wikipedia 地球上的大多数人听说过维基百科这个名字,但未想过为它贡献。维基百科靠维基媒体基金会支持。Mediawiki使用简单标签标记他们的easy bugs。Click! 开始 – http://www.mediawiki.org/wiki/Gerrit/Getting_started 如何成为一个Mediawiki迷 – http://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker 在本地安装Mediawiki – http://www.mediawiki.org/wiki/MediaWiki-Vagrant IRC – #mediawiki IRC – #mediawiki 现在这个链接很重要 烦人的小bug – http://www.mediawiki.org/wiki/Annoying_little_bugs GNOME “Gnome-love”是标记那些初学者开始GNOME的easy bugs的可爱标签。如果你曾经访问GNOME主页:“参与”链接在头部菜单栏清晰可见。无论如何这是你不用搜索的链接:) GNOME维护一个新手指南: https://wiki.gnome.org/NewcomersTutorial 如果你想知道如何提交你的第一个补丁,读这篇文章 :https://wiki.gnome.org/GnomeLove/SubmittingPatches 如果你想构建代码,从这里开始构建:https://wiki.gnome.org/GnomeLove/JhbuildIntroduction 文档: https://developer.gnome.org/ |