什么时候合并开源项目?

时间:2009-02-07 14:52:14

标签: open-source merge

示例:我们排名前三的用户中有两个在几乎相同的项目中工作(我不深入了解它们,也许我错了):

Marc GravellProtobuf-Net

Jon SkeetDotNet-Protobuf

关于Jon Skeet分开的笑话,以及一个无法自豪的理想世界做梦(对不起家伙,我并没有指责你是傲慢的,事实是每个程序员都必须捍卫自己的代码),这不是一个很好的机会加入努力?

我并不是说社区应该决定个人必须做什么,我只是想让你提出合并项目的利弊,以及哪些项目必须要进行这样的分析。

2 个答案:

答案 0 :(得分:2)

在没有对可用解决方案进行彻底研究的情况下开始一个新项目,并且没有认真考虑加入现有项目的可能性,社区应该更加强调这一点。也许程序员的教育应该包括一些关于努力重复成本的讨论。

话虽如此,尝试不同的方法来解决同样的问题是健康的,一旦程序员拥有一些玩具代码,我们应该感谢他将其提供给公众,无论是否存在类似的项目。

我认为作者应该认真考虑合并:

  • 一种设计已被证明明显优于其他设计
  • 一个社区比另一个社区更活跃
  • 两个项目在未来方向上分享相同的想法
  • 合并两个代码库所需的工作是可行的

答案 1 :(得分:1)

合并应该在总体有益的时候进行。例如,如果其中一个或两个项目:

  • 太弱而无法靠自己生存(没有足够的积极发展来跟上技术变化);或...
  • 通过重叠(即不完全相同)的功能可以提供良好的协同作用。

然而,有两个强项目都做同样的事情没有任何问题 - 它可以帮助鼓励创新,因为他们试图比彼此更好。