重命名开放源代码分叉的礼节是什么?


29

我想在Github上使用TestNG Java测试框架(Apache 2许可),以便我可以添加/更改一些次要的东西以满足我的需要。

我的所有更改都不太可能会在主项目中获得批准,也不太可能其他人会使用我的fork。这绝不是对主要项目的竞争。

现在,在命名方面,我想更改工件名称(testng-mycompany)或版本(6.8.mycompany),以便与我的Maven存储库中的正式版本没有混淆。这会被认为是不良的礼节吗?如果是,区分叉子的最佳方法是什么?


9
另请参阅有关Github流程分叉项目以及礼节与分叉标签的交集(当前包含您的问题和链接的问题)。

Answers:


5

分叉,做最坏/最好的事情。

开源软件一直致力于让个人适应,改变和挑战惯例。分叉项目的难点是在您周围建立一个新社区,该社区相信您的工作。

例如,我可以下载Apache的源代码,进行一些修改,然后将其称为下一件大事。.但是,如果没有其他人加入,那么我将继续追赶由NET提供的无数新功能和错误修复。 Apache核心社区。

参考:《权力的游戏》。

与分叉TestNG相比,在现有Repo上为其编写模块/附加组件可能更简单,那样,您只需要维护自己的代码即可。

另外,如果您觉得需要更改TestNG,那么也许这只是工作的错误工具。

[免责声明,到目前为止我从未听说过TestNG]


-1。这根本无法回答问题。
乔恩·本特利

2

开源项目旨在进行高级开发。开源项目的伟大之处在于它们鼓励外部合作。当您决定分叉一个项目时,您只需声明自己已经主动对项目产生自己的“风味”或“解释”。许多团队最终将分叉自己的项目,以扩展项目基础以实现多种目的。

示例:Webkit和闪烁

就命名而言,您希望尽可能清晰。开发中的基本命名法模棱两可。

转至:您使用什么“版本命名约定”?

如果要进行分叉,则需要声明“名称”,然后准确传达您使用的版本。

除非您计划在与预期目标根本不同的方向上进行项目,否则我看不出有什么理由分叉。我发现,在大多数情况下,我提议的新增功能/修改为双向学习提供了很好的机会。如果有的话,我会与Dave谈谈创建独立模块以便在保持核心项目完整性的同时促进模块化的想法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.