代码之家  ›  专栏  ›  技术社区  ›  Jader Dias

何时合并开源项目?[关闭]

  •  1
  • Jader Dias  · 技术社区  · 16 年前

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

    Marc Gravell s Protobuf-Net

    Jon Skeet s DotNet-Protobuf

    除了关于Jon Skeet的笑话,还有一个无骄傲的理想世界的梦想(对不起,伙计们,我不是在指责你们傲慢,每个程序员都必须捍卫自己的代码),这难道不是一个共同努力的好机会吗?

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

    2 回复  |  直到 8 年前
        1
  •  2
  •   UncleZeiv    16 年前

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

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

    我认为,在以下情况下,作者应该认真考虑合并:

    • 一种设计已被证明明显优于另一种
    • 一个社区比另一个社区更活跃
    • 这两个项目在未来方向上有着相同的想法
    • 合并这两个代码库所需的工作是可行的
        2
  •  1
  •   Peter Boughton    16 年前

    合并应该发生在整体有利的时候。例如,如果这两个项目中的一个或两个:

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

    然而,让两个强大的项目都做同样的事情并没有什么错——这有助于鼓励创新,因为它们试图比彼此更好。