如果您正在关注开源项目并希望贡献代码更改,您需要做什么?

有帮助吗?

解决方案

我会先花时间去了解人们。通常他们有一个 IRC 聊天室,每个人都在那里闲着。花一些时间去了解人们,研究代码,查看文档,然后如果你觉得自己适合这个项目,就开始为错误补丁做出贡献。一开始不要尝试添加新功能。他们一般不会被接受。

另请观看谷歌技术讨论 如何保护您的开源项目免受有毒人员的侵害. 。它会教你什么不该做。

其他提示

最好的方法是这样介绍自己:“嗨,这是一个错误/功能,这是一个修复/实现它的补丁。”

我参与了几个开源项目,有很多人最想提供帮助,但他们从未真正做任何事情,因此,如果您提供工作代码,您将被认为更有价值。

正如之前的海报所说,这是项目的问题。你会发现有些人比其他人更愿意改变。从机械角度来看,您需要查看他们是否使用 SVN(例如在 google code 上)或 CVS(例如在 sourceforge 上),并确定他们是否使用补丁或其他方法。

您可能需要采用的程序类型的一个很好的示例可以在 gimp 站点上看到: http://www.gimp.org/bugs/howtos/submit-patch.html注意他们对 Bugzilla、补丁和 CVS 的使用

作为几个开源项目的创建者,我站在事情的另一面,因为我正在努力吸引贡献者。我要说的是:

  • 以适合该项目的方式宣布自己:电子邮件、邮件列表、论坛等
  • 看看您的想法是否已经在实施中。如果是这样,也许可以尝试提供帮助,而不是重复工作。
  • 了解提交代码的首选方式
  • 请务必遵循项目中使用的编码风格。(如果您决定将所有制表符转换为空格,他们将无法轻松地将您的更改合并到其版本控制系统中,并且很可能会忽略您的提交。)

这样的事情过去很简单。

有一个针对用户的邮件列表和一个针对开发人员的邮件列表。如果您发现问题并且可以修复它,请修复它,然后运行 ​​Larry Wall 的补丁并将生成的补丁发送到开发人员列表,并对其功能进行快速说明。通常,对 CVS 具有写访问权限的开发人员(或者在过去,项目所在的软盘;))会检查所有内容,并且您的补丁是否按照其说明进行操作,并且不会破坏它进入的其他任何内容正确的源树。

如今,有越来越多的项目使用开放式开发,其中很多都是由以前从未运行过软件项目的人运行的,更不用说开源项目了,所以事情可能会更加棘手。一般来说,即使在今天,将补丁邮寄给在项目的正确领域进行大量开发的人也会很快得到正确的关注。浏览在线存储库会告诉您从事这项工作的人,而不是那些在网站首页上获得名字的人,请先联系这些人:)

还有一些需要记住的事情:

  • 请确定 实际上拥有您想要回馈的代码,而不是您的雇主或您进行修改的客户。如果您可能遇到这种情况,请检查您的雇佣协议或服务协议。

  • 调查是否存在开发人员希望贡献者经历的知识产权分配流程。如今,许多开源项目都有这样的分配,因此项目中代码的所有权利都可以由项目本身和/或其赞助商拥有。

当涉及到保护您自己、项目以及任何想要在项目下游使用或构建项目的人免受与您编写的代码相关的索赔时,这两点都很重要。

如果您正在寻找小规模参与的方法(也许是为了向上努力) 开放舱口 有一个可搜索的错误数据库(按语言/框架排序)以及一个很棒的入门教程。

另一种开始方法是 代码分类 其中有 GitHub 存储库寻求帮助解决也按语言组织的未决问题。

您应该做的第一件事是联系运行开源项目的主要人员。询问他们是否可以为代码做出贡献并从那里开始。

简单地编写改进的代码然后将其提供给他们可能会导致您的代码被拒绝。

这取决于项目、托管方式和地点。最好的办法是找到联系人并向他们发送电子邮件,或者查看是否有开发人员邮件列表。

在 IRC 中聊天或浏览新闻组(如果有)。让自己出名。您可能需要先向新闻组提交补丁,然后才能获得用于提交补丁的帐户。

熟悉编码标准、补丁类型(例如统一差异)并检查其 CVS 或 SVN 的副本(如果它们允许匿名访问)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top