TestNG Javaテストフレームワーク(Apache 2ライセンス))をGithubでフォークしたいので、マイナーなものを自分のニーズに合わせて追加/変更できます。
私の変更がすべてメインプロジェクトで承認されることや、他の人が私のフォークを使用することはほとんどありません。これは決してメインプロジェクトへの競争ではありません。
ここで、名前付けに関して、アーティファクト名(testng-mycompany)またはバージョン(6.8.mycompany)を変更して、Mavenリポジトリの公式バージョンと混同しないようにします。これはエチケットが悪いと考えられますか?もしそうなら、あなたのフォークを区別するための最良のアプローチは何ですか?
フォークして、最悪/最善を尽くしてください。
オープンソースソフトウェアは常に、個人が慣習に適応し、変更し、挑戦することを可能にするものでした。プロジェクトをフォークすることの難しい部分は、あなたが何をしているかを信じるあなたの周りの新しいコミュニティを開発することです。
たとえば、Apacheのソースをダウンロードし、いくつかの変更を加えて、それを次の大きなものとすることができます。コアApacheコミュニティ。
参考:ゲーム・オブ・スローンズ。
TestNGをフォークするよりも、既存のRepoの上にモジュール/アドオンを作成する方が簡単かもしれません。そうすれば、独自のコードを維持するだけで済みます。
あるいは、TestNGを変更する必要性を感じた場合は、おそらくそれは単にジョブにとって間違ったツールです。
[免責事項、私は今までTestNGについて聞いたことがありません]
オープンソースプロジェクトは、高度化を目的としています。オープンソースプロジェクトの優れた点は、外部のコラボレーションを促進することです。プロジェクトを分岐することを決定するときは、プロジェクトの独自の「フレーバー」または「解釈」を作成するためのイニシアチブを取ったと述べるだけです。多くのチームは、複数の目的でプロジェクトのベースを拡張するために、自分のプロジェクトをフォークすることになります。
例:WebkitとBlink
ネーミングに関しては、できるだけ明確にする必要があります。開発における基本的な命名法は、あいまいです。
フォークする場合は、「名前」を述べてから、使用しているバージョンを正確に伝えます。
意図したものとは根本的に異なる方向にプロジェクトを進めるつもりでない限り、フォークする理由はないと思います。ほとんどの場合、私が提案する追加機能/変更は、双方向からの素晴らしい学習機会を提供することがわかりました。コアプロジェクトの整合性を維持しながらモジュール性を促進するために別のモジュールを作成するという考えについて、私はデイブと一緒にいます。